0
以下のコードを手伝ってください。クラスSearchPort
のメソッドからarraylist要素(検索されたポート)を返そうとしています。これは対応するクラスCommunicationで使用され、returnArray()
というメソッドが呼び出され、Jcombox
オプションに使用される文字列が抽出されます。しかし、私はそれをどうやってやるの?助けてください。Java ComboBoxアライリストとのアソシエイティブ
public class SearchPort {
CommPortIdentifier portIdentifier;
ArrayList <String> portFound ;
public void listPorts() {
portFound = new ArrayList();
//Enumeration holds all port objects
Enumeration<CommPortIdentifier> portEnum = CommPortIdentifier.getPortIdentifiers();
while (portEnum.hasMoreElements()) //while Enumeration contains more port objects
{
portIdentifier = portEnum.nextElement(); //switches through each port
portFound.add(portIdentifier.getName());
}
}
public String returnArray(){
listPorts();
for(int i = 0; i < portFound.size(); i++){
System.out.println(portFound.get(i));
}
return portFound;
}
public static void main(String[] args){
SearchPort run = new SearchPort();
run.listPorts();
}
}
public class Communication {
JLabel jLabel1;
JPanel jPanel1;
JComboBox Connections;
public Communication() {
JFrame commFrame = new JFrame("gec");
commFrame.pack();
commFrame.setVisible(true);
commFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
commFrame.setSize(300,300);
jLabel1 = new JLabel();
jPanel1 = new JPanel();
jLabel1.setText("GEC");
Font font = new Font("Calibri", Font.BOLD, 14);
SearchPort port = new SearchPort();
String [] portStrings = { port.returnArray()}; //add found ports into array
Connections = new JComboBox(portStrings);
Connections.addItemListener(null);
jLabel1.setFont(font);
jPanel1.add(jLabel1, BorderLayout.EAST);
jPanel1.add(Connections, BorderLayout.CENTER);
/*Add Contents to the Frame*/
commFrame.add(jPanel1);
}
public static void main(String args[]) {
Communication GUI = new Communication();
}
}//end class
public JComboBox(Object [] items)の最後のコード行は、どのように達成するのですか?私は単純にコンボボックスのオプションをSearchPortクラス – user1106130
の中の私のarraylist要素にしたいと思っています1) 'while(portEnum.hasMoreElements())'、2) 'for(int i = 0; i
mKorbel
私はまだ2つの異なるクラスにあるので、私はまだわかりません。ありがとうございました – user1106130