[英]Java GUI Fill Combo box values with ArrayList
我正在嘗試用ArrayList的值填充ComboBox,但我不知道如何。 我希望數據來自ArrayList COM = new ArrayList();。 我已經擁有的:
private void initComponents() {
selectedComPort = new javax.swing.JComboBox();
selectedComPort.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "COM 1", "COM 2" }));
selectedComPort.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
selectedComPortActionPerformed(evt);
}
});
}
private void selectedComPortActionPerformed(java.awt.event.ActionEvent evt) {
}
public static void main(String args[]) {
// Search all available COM ports and put them into a ArrayList
ArrayList<String> COM = new ArrayList<String>();
Enumeration portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
CommPortIdentifier portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_PARALLEL) {
System.out.println("No COM ports found");
} else {
COM.add(portId.getName());
}
}
System.out.println(COM);
}
private javax.swing.JComboBox selectedComPort;
嘗試,
private void initComponents() {
List<String> COM = new ArrayList<String>();
Enumeration portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
CommPortIdentifier portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_PARALLEL) {
System.out.println("No COM ports found");
} else {
COM.add(portId.getName());
}
}
selectedComPort = new JComboBox(COM.toArray(new String[COM.size()]));
....
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.