我在这个网站上看过类似的问题,但我似乎无法理解这个概念,所以我必须发布我自己的问题才能得到针对我的答案。
我试图通过单击 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/