`

程序添加JComboBox的item也能触发itemStateChanged事件吗

阅读更多

程序添加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 事件

 

  • 大小: 33.4 KB
0
1
分享到:
评论

相关推荐

    java JComboBox的事件处理

    在GUI编程中,处理JComboBox的事件是提高用户交互性和应用程序功能的关键部分。本篇文章将深入探讨Java中JComboBox的事件处理机制,以及如何通过编程实现这些功能。 JComboBox的事件主要分为两类:ActionEvent和...

    java JComboBox的使用

    当用户从 `JComboBox` 中选择一个项时,可以触发 `ActionEvent`。可以添加 `ActionListener` 来处理这些事件: ```java comboBox.addActionListener(e -&gt; { Object selectedValue = comboBox.getSelectedItem();...

    JComboBox下拉框多选

    创建`JComboBox`的基本步骤包括实例化`JComboBox`对象,添加选项(元素),并将其添加到容器(如`JFrame`)中。例如: ```java JComboBox&lt;String&gt; comboBox = new JComboBox(new String[]{"Option1", "Option2", ...

    java 建立可自行输入的JComboBox

    在实际应用中,我们还可以为`JComboBox`添加事件监听器,以便在用户选择或输入新值时执行相应的操作。例如,我们可以监听`ActionEvent`,当用户按下回车键或者从下拉列表中选择一个选项时触发: ```java comboBox....

    Java Swing JComboBox下拉列表框的示例代码

    Java Swing JComboBox 下拉列表框的示例代码 Java Swing JComboBox 下拉列表框是一种常用的 GUI 组件,它允许用户从多个选项中选择一个值。下面将详细介绍 JComboBox 的基本概念、常用构造方法、常用方法和示例代码...

    Swing事件源可能触发的事件

    它能触发`WindowEvent`,例如当窗口被创建、关闭、最小化或最大化时。`WindowListener`或`WindowAdapter`用于监听这些事件。 2. **AbstractButton**(包括JButton, JToggleButton, JCheckBox, JRadioButton): 这些...

    JComboBox动态绑定数据库

    为了实现动态绑定,通常会在用户操作`JComboBox`时触发事件,如选择变更,然后根据新的选择重新查询数据库并更新组件。例如,使用`ActionListener`监听选择事件: ```java comboBox.addActionListener(e -&gt; { ...

    JComboBox级联

    具体来说,当用户在一个`JComboBox`中做出选择后,程序会触发级联逻辑,创建新的`JComboBox`并将其添加到界面上,同时也会隐藏那些不再相关的`JComboBox`。 #### 三、关键代码解析 1. **初始化变量**: ```java ...

    java 建立有图像的JComboBox

    这个程序演示了如何在`JComboBox`中使用图像。通过结合使用`CellRenderer`和自定义的`ComboBoxModel`,你可以创建一个功能齐全、视觉效果良好的带有图像的`JComboBox`。 总结一下,要在Java中创建一个有图像的`...

    用JComboBox和JList实现的一个文件浏览器组件

    2. 组件间的交互:通过`ActionListener`或`ItemListener`监听`JComboBox`的选择事件,当选择改变时触发`JList`的更新。 3. 模型管理:对于`JComboBox`,我们可以使用`DefaultComboBoxModel`来存储文件夹路径;对于`...

    JComboBox With JCheckBox

    5. **布局管理**:最后,将`JComboBox`添加到你的Swing应用程序的容器中,例如`JFrame`或`JPanel`,并使用适当的布局管理器(如`FlowLayout`、`GridLayout`或`BorderLayout`)来排列组件。 ```java JFrame frame ...

    java 实现下拉列表JComboBox中值和显示不同

    Java 实现下拉列表 JComboBox 中值和显示不同 在 Java 中,实现下拉列表 JComboBox 中值和显示不同是一种常见的需求。下拉列表 JComboBox 是 Java 中的一种 GUI 组件,用于提供用户选择多个选项。通常情况下,我们...

    Swing-JComboBox.zip_JComboBox_JComboBox qq

    总之,`JComboBox`虽然在默认状态下可能不符合所有人的审美,但Java提供了一系列的机制来允许开发者进行定制,从而创建出符合应用程序整体风格的下拉列表框。这个压缩包提供了一种可能的解决方案,对于想要提升Java ...

    swing组件JComboBox

    ### Swing组件JComboBox知识点详解 在Java Swing框架中,`JComboBox`是一个非常重要的组件,它主要用于实现下拉列表的功能,常被用作用户输入的一种形式。本文将围绕如何在Swing组件`JComboBox`中获取下拉列表中的...

    自动过滤的JComboBox

    支持自动过滤可选项的JComboBox 支持键盘选择、鼠标选择

    java事件 选项事件 实例代码

    当用户与应用程序的图形用户界面交互时,如点击按钮、选择菜单项或在列表中作出选择,这些动作都会触发特定的事件。Java事件模型是基于观察者模式的,它允许事件源(如按钮)注册监听器来响应特定类型的事件。 ...

    中国省市区三级联动的JCombobox源代码

    - Java Swing提供了事件监听机制,开发者可以注册监听器到`JComboBox`,在用户做出选择时触发相应事件,如`ItemListener`或`ActionListener`,从而更新其他联动的下拉框。 5. **XML数据存储**: - 标签提到XML...

    JComboBox自动过滤,很好用~

    JComboBox自动过滤,很好用~,能添加到swing,无ui限制

    Java Swing组件下拉菜单控件JComboBox用法示例

    JComboBox的基本用法非常简单,首先需要创建一个JComboBox对象,然后可以使用addItem方法添加选项,或者使用insertItemAt方法在指定位置插入选项。例如: `JComboBox&lt;String&gt; comboBox = new JComboBox();` `...

    实验五--Java事件处理.docx

    在这个实验中,我们将创建一个图形用户界面(GUI)程序,名为ArtFont,它涉及到事件源、监视器和事件处理接口的概念。 首先,事件源是能够触发事件的对象,如按钮、文本框等。在ArtFont程序中,事件源包括文本框、...

Global site tag (gtag.js) - Google Analytics