Tag: swing

如何防止JComboBox下拉列表超出垂直屏幕大小

我使用带有许多条目的JComboBox(数百个)。 我想将其下拉列表的大小限制为屏幕的垂直大小。 对于不同的外观和屏幕分辨率,使用固定大小无法正常工作。 我在Windows 7上使用Java 6u25。 如果我将最大行数设置为超过适合屏幕(75)的列表项(=行)数的值(例如100),则下拉列表似乎以完整大小绘制但是最低条目永远不可见。 这是插图的截图(感谢@trashgod的SSCCE)。 在XP上的虚拟机中拍摄了sceenshot。 我还在另一台PC上测试了代码,所以我想我可以排除一些驱动程序问题。 我喜欢的是一个适合屏幕的下拉列表,我可以完全向下滚动到最后一个值(并查看该值)。 反过来说,我想看滚动条的向下滚动按钮。 是唯一可能渲染列表的单元格并在我的计算中使用它吗? 操纵combobox的高度参数不起作用。 任何想法如何解决这个问题? 让我感到困惑的是,我没有找到任何关于这个问题的参考。 我假设我要么缺少明显的东西,要么我在搜索时使用了错误的关键字。 如果后两者中的任何一个,我道歉请给我一个提示。 谢谢。

如何在不裁剪的情况下旋转缓冲图像? 有没有办法旋转JLayeredPane或JLabel?

我搜索过它,但我没有得到直接的回答。 我想要一个缓冲的图像被旋转但没有裁剪我知道新的尺寸将是这样的事情 int w = originalImage.getWidth(); int h = originalImage.getHeight(); double toRad = Math.toRadians(degree); int hPrime = (int) (w * Math.abs(Math.sin(toRad)) + h * Math.abs(Math.cos(toRad))); int wPrime = (int) (h * Math.abs(Math.sin(toRad)) + w * Math.abs(Math.cos(toRad))); 为我提供一种方法。 BTW有没有办法用ImageIcon旋转JLabel ? 意图:添加到面板和分层窗格,并将其保存到文件(保存分层窗格)。 或者我们可以旋转分层窗格吗?

Java(仅限Windows的问题):当弹出modal dialog并单击阻止的JFrame时,alwaysOnTop JFrame会落到z-order的底部

我有一个Java应用程序,其基本UI由两个JFrame组成:客户区和工具调色板,它应始终显示在客户区上方。 为了实现这一点,工具调色板设置为alwaysOnTop(true),在所有情况下都可以很好地保存一个独有的Windows:当弹出模态JDialog时,单击客户区和/或调色板(两者都是阻止)导致调色板落在客户区后面。 关闭modal dialog后,调色板会重新出现,但其“始终在顶部”已丢失:单击客户区会遮挡调色板。 这是一个最小的单源文件演示: // FloatingPaletteExample.java // 4/11/2012 sorghumking // // Demo of a Windows-only issue that has me puzzled: When a modal dialog is // opened, and user clicks in blocked JFrames (sequence depends on ownership of // modal dialog: follow the instructions in modal dialog to see the problem // behavior), the […]

JFrame以及为什么要继续运行

为什么我创建一个JFrame然后程序仍然运行,直到(即)我用窗口的小“退出按钮”关闭它? 我寻找这个答案但我失败了。 我猜到的唯一的事情就是当我做new JFrame()它就像一个特殊的new ,它在EDT中保留了对象的引用,所以它总是被引用(即使它是一个匿名的“new”)而且它不是将被垃圾收集器删除。 然后,一旦触发了窗口关闭事件,就会取消引用并销毁该对象。

将jCombobox与MySQL表同步

我使用NetBeans GUI-Designer创建了一个数据库应用程序。 使用Comboboxes的GUI(绑定到MySQL数据库表用户和团队): on Button new – > jDialog – 执行查询以在数据库中存储新用户: 问题:Combobox在程序启动时更新,但在运行程序时没有。 问题:是否可以在保存新用户或团队时直接更新combobox中的条目? 我怎么能实现这个? 编辑:这是我在点击JDialog的saveButton时所做的事情: int k=st.executeUpdate( “INSERT INTO User (username) ” + ” VALUES (‘”+ name + “‘)”); //Here I’d like to update the jComboBox1 directly if possible Outerclass.jComboBox1…; JOptionPane.showMessageDialog(null, “User is successfully saved”);’

我应该使用哪种java swing布局

我需要创建这个框架: 我应该使用哪种布局? 我正在考虑框或网格布局,但右边的菜单将是一个问题。

如何使用自定义JButton在Java(Swing)中创建JOptionPane.showOptionDialog框?

阅读完所有Dialog教程一段时间后,似乎没有明显的方法来做到这一点。 最接近的似乎是JOptionPane.showOptionDialog ,但我受限于此处的optionType参数。 编辑:我想出了问题,但有一个新问题。 看来showOptionDialog中指定的options参数需要是相当简单的对象(字符串或只是’对象’,而不是JButton等)。 我试图在这里放置一系列自定义工厂创建的JButton,因为它们有一个我想要使用的特殊翻转图标。 但是,发生的情况是,单击这些按钮中的任何一个都不会导致对话框关闭(因此,执行会继续阻止对话框)。 所以我在标题中更新了我的问题。 更简洁地说 – 问题是,如何覆盖JOptionPane.showOptionDialog(args)来获取我正在寻找的按钮定制? 或者我甚至需要这样做? 拜托,谢谢! -B。

带有JComboBox的Java JTable

我正在尝试将JComboBox放在JTable的某个列中。 我有这个代码,它正在工作: model = new DefaultTableModel(); JComboBox optionComboCell = new JComboBox(); optionComboCell.addItem(“Option 1”); optionComboCell.addItem(“Option 2”); optionComboCell.setSelectedIndex(1); table = new JTable(model); // Adding here all the columns, removed for clarity model.addColumn(“Options”); TableColumn optionsColumn = table.getColumn(“Options”); optionsColumn.setCellEditor(new DefaultCellEditor(optionComboCell)); 我的问题是,在选择该列中的单元格之前,它不会显示为JComboBox。 加载JFrame时,整个表看起来都一样,就好像所有单元格只有文本一样。 单击时,它会显示combobox的箭头和选项,但在取消选择时,它看起来像一个常规单元格。 有办法解决这个问题吗?

JSpinner没有负值

我正在netbeans中构建一个小应用程序,我使用JSpinner组件来设置产品的数量。如何设置微调器只取正值?我可以在Netbeans中选择我可以设置的方法还是JSpinner ? 额外: spinner.setModel(new SpinnerNumberModel(0, 0, 20, 1));

将DefaultMutableTreeNode分配给JTree

我正在Netbeans中开发一个小型桌面应用程序。 我在我的JFrame上拖放一个JTree ,现在我想动态地填充这个JTree的节点层次结构。 为此我worte一个方法,它返回我DefaultMutableTreeNode对象。 现在我如何将此对象分配给我拖放的JTree