java - 将 JTextPane 字符串添加到 JComboBox

标签 java swing jbutton jtextfield jcombobox

我在这个网站上看过类似的问题,但我似乎无法理解这个概念,所以我必须发布我自己的问题才能得到针对我的答案。

我试图通过单击 JButton btnAdd 将输入到 JTextField txtAddEng 中的文本添加到 JComboBox engBox 中。

    engBox = new JComboBox();
    engBox.setMaximumRowCount(1000);
    engBox.setModel(new DefaultComboBoxModel(new String[] {"Select an Engagement"}));
    engBox.setBounds(10, 0, 181, 20);       
    sopPanel.add(engBox);

    txtAddEng = new JTextField();
    txtAddEng.setHorizontalAlignment(SwingConstants.CENTER);
    txtAddEng.setToolTipText("Type ENG-#### and click Add");
    txtAddEng.setText("Add an engagement?");
    txtAddEng.setBounds(201, 0, 181, 20);
    sopPanel.add(txtAddEng);
    txtAddEng.setColumns(10);

    JButton btnAdd = new JButton("Add");
    btnAdd.setBounds(383, 3, 51, 17);
    btnAdd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent clickAdd) {
            txtAddEng.toString();
            engBox.add(txtAddEng);
        }
    });

最佳答案

txtAddEng.toString();

该声明没有任何作用。它只是调用 toString() 方法,但从未将其分配给变量。删除该声明。

engBox.add(txtAddEng);

您不想将文本字段添加到组合框。您想要将文本字段中的文本添加到组合框的模型中。

所以代码应该是;

engBox.addItem( txtAddEng.getText() );

阅读 Swing 教程中关于 How to Use Combo Boxes 的部分了解更多信息和工作示例。保留指向教程的链接,了解所有 Swing 基础知识。

关于java - 将 JTextPane 字符串添加到 JComboBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52083789/

相关文章:

java - 使 JButton 在 JPassword 字段上显示文本

Java程序从eclipse导出后无法运行

java - 单元测试仅在由 maven 运行时失败

Java 在顶角绘制按钮动画

java - 在哪里存储一致的应用程序属性?

java - 单击 JTable 标题时排序错误的列

java - 在 Windows 上设置 JButton 背景颜色

java - WebSphere Portal 8.5 - Portlet 应用程序 - Error.jsp 的服务方法抛出 NullPointerException

java - 如何在 Windows 中将 jar 添加到 jconsole 类路径?

java - 如何制作 Jbutton 图像数组