Ich arbeite an einem Programm, das eine Reihe von Kontakten verwendet, und ich versuche eine Ganzzahl zurückzugeben, wie viele Personen online sind. Ich habe bereits eine Schaltfläche namens Refresh, die implementiert ist. Ich drücke den "Refresh" Knopf auf einem JFrame und es wird zuerst das JLabel OnlineCountNum, welches eine leere Zeichenkette ist, aktualisieren. Nach dem Drücken von Aktualisieren wird 1 angezeigt, um den Benutzer einzubeziehen, der online war. Wenn ich mich jedoch bei einem anderen Benutzer anmelde und die Aktualisierungsschaltfläche drücke, wird er nicht erhöht, sondern bleibt für diesen Benutzer bei 1. Die JList listContacts enthält Elemente mit dem Namen oder dem Namen (Online). Ich versuche zu zählen, wie viele dieser Namen haben (Online). Wenn der Benutzer der einzige Benutzer auf dem Server ist, sollte als Ergebnis 1 angezeigt werden. Wenn zwei Personen auf dem Server sind, sollte für beide Personen 2 angezeigt werden, und beide Personen sehen eine andere Person als Name (Online) in einem Bereich.Übereinstimmungselement mit spezifischem Element funktioniert nicht JList ActionListener
private JLabel onlineCountNum; //label gets refreshed by button
private JLabel onlineCountText; //"Online Count: " label
private JButton onlineCountUpdate; //refresh button
onlineCountText = new JLabel("Online Count: ");
onlineCountNum = new JLabel("ERROR");
onlineCountUpdate = new JButton("Refresh");
onlineCountNum.setText("");
onlineCountUpdate.addActionListener(new MyButtonListener6());
class MyButtonListener6 implements ActionListener{
public void actionPerformed(ActionEvent e){
int count = 1;
ListModel list = listContacts.getModel();
for(int i = 0; i < list.getSize(); i++){
if(list.getElementAt(i).equals(list.getElementAt(i)+"(Online)")){ //possible source of error
count++;
}
}
onlineCountNum.setText(String.valueOf(count));
}
}
ich bearbeiten meinen Code entsprechend, und ich bin mit diesem Fehler dargestellt, nicht Symbol finden, beim Kompilieren. Es bezieht sich auf die .endsWith-Methode. – whuang
Eigentlich habe ich meinen Fehler gefunden. Ich habe vergessen, den Typ der JList anzugeben. Ihr Code funktioniert jedoch immer noch! Vielen Dank! – whuang