【问题标题】:Display area of a jComboBoxjComboBox的显示区域
【发布时间】:2010-11-24 11:25:39
【问题描述】:

我的应用程序中有这个 jComboBox。但是,有时当我打开它时,下拉区域太小,无法容纳它应该显示的所有信息。是否有任何工作可以扩大下拉区域以容纳它需要显示的所有信息而不增加 jComboBox 的大小?

谢谢。

【问题讨论】:

  • 如何填充 JComboBox?
  • @Mohamed Saigh:我正在使用 jDeveloper 11g。@
  • @dacwe:填充一个 ResultSet 并使用 jComboBoxModel 加载它。

标签: java swing jcombobox


【解决方案1】:

您可能正在寻找阶梯组合。

这里的基本思路是通过扩展MetalComboBoxUI来自定义Combobox UI

Here is a sample code

【讨论】:

    【解决方案2】:

    我实际上打算在这个周末在我的博客上发布这段代码。这是一个早期版本(稍后我将使用真实链接更新帖子)。这种方法的好处是该功能由侦听器支持,因此它应该适用于扩展 BasicComboPopop 的任何 LAF,并且您不需要扩展任何类。你可以像这样使用它:

    JComboBox comboBox = new JComboBox( items );
    BoundsPopupMenuListener listener = new BoundsPopupMenuListener(true, false);
    comboBox.addPopupMenuListener( listener );
    

    编辑:查看Combo Box Popup 以获取最终代码。

    【讨论】:

    • 哇,这正是我想要的。非常感谢。
    • 嗨,你的博客地址是什么?
    猜你喜欢
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 2021-03-14
    • 2012-06-05
    • 1970-01-01
    相关资源
    最近更新 更多