Tag: swing

JTable禁用单元格中的checkbox

你好我有一个JTable我想灰所有禁用checkbox单元格我试图用自定义渲染器检查isEnabled(),然后更改背景颜色,但仍然不workin。 有什么build议么? 谢谢!!!

JTable,RowFilter和RowFilter.Entry

请将RowFilter ( 它的ComparisonType )放在一起 正则expression式(string),数字,date 和…一起 AND,OR,NOR 不知道如何 用AND,OR,NOR来处理空值 如果正则expression式(string),数字,date有相同的逻辑或有“小差异” 特别是如何比较Date值 一些更长和详细的描述是受欢迎的 在这个SSCCE看到我的基本问题进入frame.add(new JButton(new AbstractAction("Toggle filter") { import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.util.Calendar; import java.util.Date; import javax.swing.*; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel; import javax.swing.table.TableRowSorter; public class JTableFilterDemo { private static TableRowSorter<TableModel> sorter; private Object[][] data = {{"A", 5, true, new Date()}, {"B", 2, false, new Date()}, […]

如何在Java(JTextField类)中实现只允许input数字?

如何在Java( JTextField类)中实现只允许input数字?

如何在Java的Swing GUI中将图像设置为Frame的背景?

我用Java的Swing创build了一个GUI。 我必须现在设置一个sample.jpeg图像作为我已经把我的组件的框架的背景。如何做到这一点?

设置JFrame的背景颜色

如何设置JFrame的背景颜色?

SwingUtilities.invokeLater是做什么的?

SwingUtilities.invokeLater做什么的? 它只是延迟其run方法内的代码块的run ? 在invokeLater函数中调用一个动作或者在我们想要执行的线程的末尾调用它,有什么区别? 任何人都可以帮助我真正的invokeLater函数吗?

JTable没有显示

在我的应用程序中,一切都分布 在一个动作中,应用程序从DB中检索数据并保存在ArrayList<T> 。 我创build一个RelativeTableModel的对象,我传递ArrayList<T> 。 public void RelationsClicked() { ArrayList<Relation> data = myParent.dbOperation.getRelations(); RelativeTableModel tModel = new RelativeTableModel(data); // subclass of AbstractTableModel myParent.SetBrowsePanelData(tModel); myParent.SetMainPanel(CashAccountingView.BROWSEPANEL); } 我有JScrollPane中有一个JTable的BrowseListPanel类。 它的实例已经在主应用程序中创build。 我将模型传递给BrowseListPanel并最终显示面板。 码: public void SetBrowsePanelData(AbstractTableModel tModel) { browsePanel.setTModel(tModel); } // BrowseListPanel's Code public void setTModel(AbstractTableModel tModel) { this.tModel = tModel; // tModel = AbstractTableModel } // Show the […]

Java GUI框架。 该选什么? Swing,SWT,AWT,SwingX,JGoodies,JavaFX,Apache Pivot?

java中有相当多的GUI框架,但是被认为是今天的框架呢? 以下是我对不同框架的理解,如果我错了,请纠正我。 这是一个非常松散的问题,但我仍然认为它对任何想创build丰富的gui应用程序的人都有价值。 AWT 是摆动的基础,它performance良好,但缺乏先进的组件。 如果你打算创build丰富的应用程序,AWT可能不是要走的路。 但是对于不需要丰富的用户界面的较小的gui应用程序。 这可能是完美的,因为它是一个久经考验的框架。 摇摆 如前所述基于AWT。 在起步阶段,它被认为是缓慢和错误的,并导致IBM为Eclipse创buildSWT。 然而,Java 5(或6?)Swing成为构build新应用程序的首选框架。 Swing有很多丰富的组件,但在某些领域仍然缺乏。 一个例子是没有一个全function的TreeTable组件可以进行sorting和过滤/search。 SWT 由IBM为Eclipse创build,他们似乎认为Swing当时不适合Eclipse。 本身是相当低级的,它通过JNI使用平台的本地小部件。 这与Swing和AWT无关。 他们的API有点笨重,不直观。 他们有一些像TreeTable一样的高级组件。 (但我不认为他们支持sorting和过滤框)。 SWT使用一些本地绑定(通过JNI?),互联网上的咆哮是这个框架不应该在今天的项目中使用。 (为什么不?) SwingX 基于Swing,它的使命是创build丰富的组件。 还在开发中。 (虽然不是非常活跃)。有一组非常好的组件,例如TreeTable。 但据我所知,TreeTable不支持过滤和sorting。 但是它支持高亮显示。 请注意,SwingX是组件(AFAIU),是现有Swing组件的扩展或组合 JGoodies数据 一个我一无所知的框架…它的优点和缺点是什么? 其余的Jgoodies是什么? JGoodies OTOH是关于PLAF和布局。 JavaFX的 Java / Oracle的最新旗舰。 很有希望成为开发富桌面或Web应用程序的事实标准。 Apache枢轴 它使用Java2D呈现UI,从而最大限度地减lessSwing和AWT(IMO,膨胀)遗留的影响。 (@Augustus Thoo) 它的主要重点似乎是RIA(富互联网应用程序),但它似乎也可以应用于桌面应用程序。 作为个人评论,看起来很有趣! 我特别喜欢这是一个Apache项目。 https://cwiki.apache.org/PIVOT/frequently-asked-questions-faq.html Qt Jambi 用c / c ++编写的java本地包装器。 […]

将JMenuItem的名称赋给它的ActionListener

我怎样才能给我的JMenuItem的名称附加到他们的ActionListener将看? 我有一个由单个ActionListener处理的菜单系统,这些菜单中的一些项目重复名称。 这在用户端不是问题,因为很明显什么是什么; 事实上,如果他们有不同的名字,会更混乱。 但是,在我的最后,我想要标记每个项目的唯一。 创build我的项目的部分如下所示: String label = getLabel(forThisItem); JMenuItem item = new JMenuItem(label); item.setName(parentMenu.getName() + "_" + label); item.addActionListener(actionListener); parentmenu.add(item); 然后用getName()询问项目(在这个方法的范围之外),给出了我给它的名字,因为它应该,但是输出 public void actionPerformed(ActionEvent ae) { String actionPerformed = ae.getActionCommand(); System.out.println("actionPerformed: " + actionPerformed); } 是用户看到的,可能是重复的,由label指定的label ,而不是我给出的唯一名称。 我如何将正确的信息提供给ActionListener?

我怎样才能同时滚动多个对象?

在这之后,在这里find了一个新的问题。 我是Java新手,但是我正在做一个“Flappy Bird”的娱乐活动,以便学习更多关于java和graphics显示的方式。 任何解决scheme或对我的任何问题的build议,非常感谢。 谢谢! 现在,我的程序做了一个随机的pipe道并且滚动它,但是当x1-3 = -83 ( 这是pipe道完全离开屏幕并且不再需要的时候 )我不需要它来保持滚动。 问题 我怎样才能让我的Game.class滚动多个Game.class实例,同时增加它们之间的预设距离? 我可以找出他们之间的距离,但只要展示不止一个,我不知道该怎么做。 最多3个pipe道必须同时显示。 如何显示主菜单的面板,然后在按下开始button后切换到pipe道面板? 类 Game.java import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.SwingUtilities; import javax.swing.Timer; public class Game { Pipes panel = new Pipes(); public Game() { JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.add(panel); f.setTitle("Pipe Game"); f.setResizable(false); f.pack(); f.setLocationRelativeTo(null); f.setVisible(true); […]