Hallo,
ich müsste alle 2 Sekunden ausgeben, ob ein Status false ist.
In einer Methode wird geprüft ob der Status aus ist:
Deklariert:
Und mit einem Timer wird zyklisch:
Das klappt aber so nicht, da der Text nicht als Objekt gilt und somit auch nicht wieder aus der queue gelöscht wird, wenn er wieder auf true geht.
Es soll zyklisch der Status ob ein Fenster in einem Haus offen ist, ausgegeben werden.
Beispiel:
Fenster 1 offen
Fenster 2 offen
Fenster 3 geschlossen
Ausgabe sollte im loop alle 2 Sekunden sein:
Fenster 1 offen
[2s warten]
Fenster 2 offen
[2s warten]
Fenster 1 offen
[2s warten]
Fenster 2 offen
usw ...
wenn in der Zwischenzeit ein Fenster geschlossen wird, soll es aus der Liste verschwinden, aber die Ausgabe soll nicht auf Start zurückspringen.
Beispiel von oben:
Beispiel:
Fenster 1 offen
Fenster 2 geschlossen
Fenster 3 offen
Wenn gerade bei Fenster 2 soll danach
Fenster 3 offen kommen
Die Liste würde dann so aussehen
Fenster 1 offen
Fenster 3 offen
Denk die Queue ist der falsch Ansatz?
ich müsste alle 2 Sekunden ausgeben, ob ein Status false ist.
In einer Methode wird geprüft ob der Status aus ist:
Deklariert:
Java:
Queue<String> q = new LinkedList<String>();
Java:
String s = getProperty("d" + i + "_name").getValue() + " offen";
if (!b) {
if (!q.contains(s))
q.add(getProperty("d" + i + "_name").getValue() + " offen");
} else {
if (!q.contains(s))
q.remove(getProperty("d" + i + "_name").getValue() + " offen");
}
Und mit einem Timer wird zyklisch:
Java:
private void sendText() {
if (q.size() > 0) {
String s = q.remove();
q.add(new String(s));
updateOutputStatus(s);
}
}
Das klappt aber so nicht, da der Text nicht als Objekt gilt und somit auch nicht wieder aus der queue gelöscht wird, wenn er wieder auf true geht.
Es soll zyklisch der Status ob ein Fenster in einem Haus offen ist, ausgegeben werden.
Beispiel:
Fenster 1 offen
Fenster 2 offen
Fenster 3 geschlossen
Ausgabe sollte im loop alle 2 Sekunden sein:
Fenster 1 offen
[2s warten]
Fenster 2 offen
[2s warten]
Fenster 1 offen
[2s warten]
Fenster 2 offen
usw ...
wenn in der Zwischenzeit ein Fenster geschlossen wird, soll es aus der Liste verschwinden, aber die Ausgabe soll nicht auf Start zurückspringen.
Beispiel von oben:
Beispiel:
Fenster 1 offen
Fenster 2 geschlossen
Fenster 3 offen
Wenn gerade bei Fenster 2 soll danach
Fenster 3 offen kommen
Die Liste würde dann so aussehen
Fenster 1 offen
Fenster 3 offen
Denk die Queue ist der falsch Ansatz?