问题标签 [jcombobox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4217 浏览

java - 将动作侦听器添加到 JComboBox

我只想将组合框中的选定选项打印到文本字段。请解释什么是错的,因为我必须完成它并在课堂上解释它。任何帮助将不胜感激。提前致谢。

我没有得到任何编译时错误,当我运行它时我得到了这些错误。

0 投票
4 回答
2749 浏览

java - 从 jcombobox 移除焦点后 itemlistener 获取事件

这一定是我的误解,但我有以下几点:
我在 Jcombobox 中添加了一个 ItemListener。
在项目侦听器中,我检查事件是否属于 ItemSelected 类型。
如果是,我会更新 JTextPane 中的值。问题是它的工作原理如下:
我单击 jcombobox 中的一个新值,而 jtextfield 中没有任何更改。我必须实际单击另一个组件,例如 jtextfield,然后更新 jtextfield。
似乎必须从 jcombobox 中移除焦点,以便将事件更改分派到 itemlistener 代码。
这是它应该如何工作,还是我做错了什么?是否可以在不需要移除焦点的情况下处理事件?

更新:这是我的代码和方法 updateJTextPane在我单击另一个组件后调用,而不是当我从组合中选择一个新值时调用。即组合的值为“1”,我单击下拉列表并单击“2”。当前选定的项目现在是“2”。此时没有调用我的方法。我单击第二个组合框,第二个组合具有焦点,然后调用我的方法 updateJTextPane()。为什么?
更新 2:

更新3:内部类myItemListener被添加到同一个JDialog中的另外5个组合框,如果这在某种程度上很重要,我不知道谢谢

0 投票
3 回答
3916 浏览

java - 我可以修改现有对象的 JComboBox 弹出背景颜色吗?

我有一个现有的 JComboBox 对象。我可以使用内部方法修改它的许多属性。但是,我找不到类似的方法来自定义弹出窗口的外观——特别是弹出窗口的背景颜色。我有一个现有的对象,所以我希望使用它现有的方法/属性,而不是编写一个专用的类。这可能吗?

注意:这个问题与上面的链接问题不同(错误地指出这个问题已经有了答案):那个问题询问了所选项目的 bgcolor (在组合框的编辑框中);我在问弹出框的 bgcolor。

0 投票
2 回答
5285 浏览

java - 如何将唯一的 JComboBoxes 添加到 JTable 中的列(Java)

我正在尝试将唯一性添加JComboBoxesJTable. 我知道可以使用将 a 添加JComboBox到整个列

但我需要每个JComboBox都不同,并且里面有不同的字符串。有任何想法吗?

0 投票
1 回答
5716 浏览

java - 在 jtable 中创建组合框

我的目标是提供一个像矩阵一样的界面,矩阵中的每个单元格都有 2 个值,用户将在两者中选择最好的。

所以我想到了 jTable 和组合框,问题是在我的矩阵中,一列中每个单元格的值是不同的。但是下面的代码将组合框添加到表格的整个列中,如果我更改组合框的值,它会针对整个表格进行更改。如何将组合框插入表格中,使每个组合框具有不同的值

我也试过 DefaultTableModel

代码是

但我在 gui 中得到输出为

我尝试在 setValueAt 方法中将“k”类型转换为 JComboBox 和 JComponent,但没有成功

有人请帮忙

0 投票
2 回答
2662 浏览

java - java swing,jcombobox弹出窗口中的highligth项目

我想突出显示弹出列表中的一个项目。

我说“突出显示”是因为我不想选择它(例如通过调用 setSelectedItem),而只是让它在 jcombobox 弹出窗口中被选中。

我能怎么做?

0 投票
2 回答
817 浏览

java - jComboBox的显示区域

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

谢谢你。

0 投票
1 回答
728 浏览

java - JComboBox 执行速度很慢

我正在使用 JOptionPane 并且我有一个选项卡。在选项卡中,我使用 JScrollPane 创建一个包含大量文本字段、标签和组合框的 GUI。

GUI 的创建时间很好,但我正在处理 GUI 的缓慢响应,尤其是 JComboBox。当我选择任何项目时,显示它几乎需要一秒钟。

我用谷歌搜索了很多东西,尝试了很多东西,但找不到具体的解决方案。我关心的是加快组合框的响应速度。

请推荐 谢谢

0 投票
1 回答
474 浏览

java - Windows 和 Linux 之间的 ActionListener 差异

我有一个 JComboBox。我使用以下代码添加了一个 ActionListener:

这是它第一次显示时的样子。它有几个选项。
替代文字

您会注意到 Basic Text Box 是第一个元素,因此它将是第一次显示 JComboBox 时显示的元素。

如果单击 JComboBox,您将看到其下可用的选项。

替代文字

但是,如果我选择“基本文本框”,它不会导致 ActionEvent 触发。它与它是列表中的第一个元素有关。如果我选择任何其他 JComboBox,则会触发 ActionEvent。

编辑:在 Linux 上,假设您选择了一个元素,事件就会触发。然后再次选择该元素,它不会第二次触发。它不仅限于第一个元素。它与两次选择已选择的元素有关。

这种行为只发生在 Linux 上。在 Windows 上,无论我点击哪个元素,即使是第一个,事件都会触发。关于为什么会这样的任何想法?这种行为是否因 JVM 不同而异?

谢谢

0 投票
1 回答
673 浏览

java - 当用户在 JComboBox 中选择一个项目时,如何制作一个触发的侦听器

我正在寻找一个仅在用户(使用该程序的用户)选择JComboBox. 我不想使用ActionListener,或者ItemListener因为当我通过程序选择一个项目时它们也会触发。而且我也不能使用MouseListener,因为它只在我单击时触发JComboBox,而不是在我选择一个项目时触发。

我想知道最简单的方法是什么?目前,我的解决方案很混乱。当我通过代码更改 jcombobox 的选定项时,我将标志设置为 true。在我的动作监听器中,它仅在标志为假时执行。