程序添加JComboBox的item也能触发itemStateChanged事件吗
直接看实例:
package share; import java.awt.EventQueue; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Insets; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import com.string.widget.util.ValueWidget; public class TestJComboBox extends JFrame { private JPanel contentPane; private JComboBox<String> comboBox; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { TestJComboBox frame = new TestJComboBox(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public TestJComboBox() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); GridBagLayout gbl_contentPane = new GridBagLayout(); gbl_contentPane.columnWidths = new int[]{0, 0, 0}; gbl_contentPane.rowHeights = new int[]{0, 0}; gbl_contentPane.columnWeights = new double[]{1.0, 0.0, Double.MIN_VALUE}; gbl_contentPane.rowWeights = new double[]{0.0, Double.MIN_VALUE}; contentPane.setLayout(gbl_contentPane); comboBox = new JComboBox<String>(); GridBagConstraints gbc_comboBox = new GridBagConstraints(); gbc_comboBox.insets = new Insets(0, 0, 0, 5); gbc_comboBox.fill = GridBagConstraints.HORIZONTAL; gbc_comboBox.gridx = 0; gbc_comboBox.gridy = 0; contentPane.add(comboBox, gbc_comboBox); JButton btnAddItem = new JButton("add item"); GridBagConstraints gbc_btnAddItem = new GridBagConstraints(); gbc_btnAddItem.gridx = 1; gbc_btnAddItem.gridy = 0; contentPane.add(btnAddItem, gbc_btnAddItem); comboBox.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent arg0) { System.out.println("itemStateChanged"); } }); init222(); } private void init222(){ comboBox.addItem("a"); comboBox.addItem("b"); comboBox.addItem("c"); } }
启动的时候,控制台打印:
itemStateChanged
说明启动之后,执行了itemStateChanged 方法,说明了触发了itemStateChanged 事件.
总结:程序添加addItem 也能触发itemStateChanged 事件
如何把init222 方法放在comboBox.addItemListener 前就不会触发itemStateChanged 事件
相关推荐
在GUI编程中,处理JComboBox的事件是提高用户交互性和应用程序功能的关键部分。本篇文章将深入探讨Java中JComboBox的事件处理机制,以及如何通过编程实现这些功能。 JComboBox的事件主要分为两类:ActionEvent和...
当用户从 `JComboBox` 中选择一个项时,可以触发 `ActionEvent`。可以添加 `ActionListener` 来处理这些事件: ```java comboBox.addActionListener(e -> { Object selectedValue = comboBox.getSelectedItem();...
创建`JComboBox`的基本步骤包括实例化`JComboBox`对象,添加选项(元素),并将其添加到容器(如`JFrame`)中。例如: ```java JComboBox<String> comboBox = new JComboBox(new String[]{"Option1", "Option2", ...
在实际应用中,我们还可以为`JComboBox`添加事件监听器,以便在用户选择或输入新值时执行相应的操作。例如,我们可以监听`ActionEvent`,当用户按下回车键或者从下拉列表中选择一个选项时触发: ```java comboBox....
Java Swing JComboBox 下拉列表框的示例代码 Java Swing JComboBox 下拉列表框是一种常用的 GUI 组件,它允许用户从多个选项中选择一个值。下面将详细介绍 JComboBox 的基本概念、常用构造方法、常用方法和示例代码...
它能触发`WindowEvent`,例如当窗口被创建、关闭、最小化或最大化时。`WindowListener`或`WindowAdapter`用于监听这些事件。 2. **AbstractButton**(包括JButton, JToggleButton, JCheckBox, JRadioButton): 这些...
为了实现动态绑定,通常会在用户操作`JComboBox`时触发事件,如选择变更,然后根据新的选择重新查询数据库并更新组件。例如,使用`ActionListener`监听选择事件: ```java comboBox.addActionListener(e -> { ...
具体来说,当用户在一个`JComboBox`中做出选择后,程序会触发级联逻辑,创建新的`JComboBox`并将其添加到界面上,同时也会隐藏那些不再相关的`JComboBox`。 #### 三、关键代码解析 1. **初始化变量**: ```java ...
这个程序演示了如何在`JComboBox`中使用图像。通过结合使用`CellRenderer`和自定义的`ComboBoxModel`,你可以创建一个功能齐全、视觉效果良好的带有图像的`JComboBox`。 总结一下,要在Java中创建一个有图像的`...
2. 组件间的交互:通过`ActionListener`或`ItemListener`监听`JComboBox`的选择事件,当选择改变时触发`JList`的更新。 3. 模型管理:对于`JComboBox`,我们可以使用`DefaultComboBoxModel`来存储文件夹路径;对于`...
5. **布局管理**:最后,将`JComboBox`添加到你的Swing应用程序的容器中,例如`JFrame`或`JPanel`,并使用适当的布局管理器(如`FlowLayout`、`GridLayout`或`BorderLayout`)来排列组件。 ```java JFrame frame ...
Java 实现下拉列表 JComboBox 中值和显示不同 在 Java 中,实现下拉列表 JComboBox 中值和显示不同是一种常见的需求。下拉列表 JComboBox 是 Java 中的一种 GUI 组件,用于提供用户选择多个选项。通常情况下,我们...
总之,`JComboBox`虽然在默认状态下可能不符合所有人的审美,但Java提供了一系列的机制来允许开发者进行定制,从而创建出符合应用程序整体风格的下拉列表框。这个压缩包提供了一种可能的解决方案,对于想要提升Java ...
### Swing组件JComboBox知识点详解 在Java Swing框架中,`JComboBox`是一个非常重要的组件,它主要用于实现下拉列表的功能,常被用作用户输入的一种形式。本文将围绕如何在Swing组件`JComboBox`中获取下拉列表中的...
支持自动过滤可选项的JComboBox 支持键盘选择、鼠标选择
当用户与应用程序的图形用户界面交互时,如点击按钮、选择菜单项或在列表中作出选择,这些动作都会触发特定的事件。Java事件模型是基于观察者模式的,它允许事件源(如按钮)注册监听器来响应特定类型的事件。 ...
- Java Swing提供了事件监听机制,开发者可以注册监听器到`JComboBox`,在用户做出选择时触发相应事件,如`ItemListener`或`ActionListener`,从而更新其他联动的下拉框。 5. **XML数据存储**: - 标签提到XML...
JComboBox自动过滤,很好用~,能添加到swing,无ui限制
JComboBox的基本用法非常简单,首先需要创建一个JComboBox对象,然后可以使用addItem方法添加选项,或者使用insertItemAt方法在指定位置插入选项。例如: `JComboBox<String> comboBox = new JComboBox();` `...
在这个实验中,我们将创建一个图形用户界面(GUI)程序,名为ArtFont,它涉及到事件源、监视器和事件处理接口的概念。 首先,事件源是能够触发事件的对象,如按钮、文本框等。在ArtFont程序中,事件源包括文本框、...