Rechner zu schnell für Events?

Status
Nicht offen für weitere Antworten.

sEREAL

Mitglied
Ich programmiere in einer Firma jetzt schon über 3 Jahre an einer sich ständig vergrößernden Anwendung. Soll heissen, wir haben einmal eine GUI geschaffen, die bis jetzt im Grunde identisch ist und auch funktioniert(e).
Nun taucht aber auf einem Vorführrechner ein seltsames Phänomene auf. Und zwar, dass Events nicht abgearbeitet werden, die durch User-Interaktionen ausgelöst werden.

Buttons bekommen zwar bei einem Klick den Focusrahmen, aber führen die zugewiesene Action nicht aus. Versucht mans nochmal, drückt etwas länger, funktioniert es. Drückt man gleich beim 1. mal etwas länger, funktioniert es auch.
(länger drücken heisst hier ca 1 sek gedrückt halten) Aber: manchmal klappt es auch bei "flinkem Klicken" o_O
Deshalb Phänomen.

Generell verwende ich immer einen ActionListener ala:
Code:
JButton b = new JButton();
b.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent arg0) {
       // do something
    }
});

Da der Vorführrechner unser Schnellster ist, sich aber sonst auf keiner Weise unterscheidet zu den Entwicklersystemen, kam ich auf die im Titel stehende Frage.

Vielleicht hatte ja jemand auch schonmal so etwas.

Java: 1.4.2
OS: Win2k/Linux
 

Wildcard

Top Contributor
zu schnell kann ich mir beim besten willen nicht vorstellen. Bei unerklärlichen Problemen sind meistens Threads die Ursache. Schon mit einem Debugger versucht?
 

sEREAL

Mitglied
Es laufen zwar viele Threads nebenher, aber die GUI ist gleichzeitig die Anwendung selbst. Heisst, kommt der main-Thread mal an die CPU, sollten auch alle seine Methoden gleiche Beachtung bekommen. Kann ja nicht sein, dass der Focus-Rahmen kommt, aber der zugewiesene Listener nicht ausgelöst wird. *seufz

Beim Debuggen kann ich nichts feststellen. Nur das er erst in den Listener springt, wenn eh der Erfolgsfall da ist :O
 

Wildcard

Top Contributor
Sind auch alle Stellen an denen es nötig ist synchronisiert?
Wie gesagt, solche 'Phänomene' tauchen meistens in Kombination mit Threads auf.
 

sEREAL

Mitglied
Hier nen kleines Beispielprogramm. So siehts ca aus, nur im größeren Rahmen.
Weiss nicht, wo man hier synchronized reinsetzen sollte.

Code:
class Programm extends JFrame{
    JButton b; Uhrzeit u;

    public Programm(){
        initGUI();
    }

    public void initGUI(){
         b = new JButton("Klick Me");
         b.addActionListener(new ActionListener({
            public void actionPerformed(ActionEvent arg0) { 
                System.out.println("Button gedrueckt"); // <-- das macht er manchmal nicht
            } 
         }));
         getContentPane().add(b);
         u = new Uhrzeit();
         u.start();
         show();
    }

    public static void main(String[] args){
        new Programm();
    }
}
class Uhrzeit extends Thread{
    public void run(){ System.out.println(new GregorianCalendar().getTimeInMillis()); }
}

Auch wenn die Programm-Klasse mehr Methoden bekommt, ist es nach meinem Verständnis egal
für den Listener, ob diese Methoden synchronized sind.
 

Wildcard

Top Contributor
show() ist deprecated!
Hier ist das ok, das Problem ist nur das Swing nicht Thread-sicher ist.
Wenn andere Threads mit deiner Anwendung kommunizieren (was ja vermutlich der Fall ist), musst du invokeLater usw. verwenden, sonst gibts Probleme.
 

sEREAL

Mitglied
das System.out war jetzt nur nen Beispiel (der Listener sollte dennoch schneller fertig sein, als man 2xKlicken kann)

Versteh nur net .. wenn es ein synchronized Problem gibt, dass er garnichts macht .. er springt ja garnicht erst rein.
Und warum dann beim schnellen Rechner, beim langsamen nie?!

Das mit dem invokeLater schau ich mir mal an
danke

PS: java.awt.Window.show(); ist zumindest in Java 1.4.2 nicht deprecated
 

thE_29

Top Contributor
Steht aber nix da!

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Window.html#show()

Im gegensatz zu

http://java.sun.com/j2se/1.5.0/docs/api/java/awt/Window.html#show()


Denoch steht hier:

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Component.html#show()

Schon seit JDK 1.1

bisi komisch...
 

Wildcard

Top Contributor
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Window.html#show() hat gesagt.:
Overrides:
show in class Component
und diese Methode ist wiederrum deprecated. Denke die haben das einfach vergessen dazuzuschreiben, deprecated ist's aber auf jeden Fall :wink:
 

sEREAL

Mitglied
okay .. Component hab ich nicht beachtet .. habs auf setVisible(..) geändert, der Effekt besteht weiterhin
 

Wildcard

Top Contributor
Schon klar das es nicht an show() liegt, war nur der Vollständigkeit halber.
Ich kann dir dazu auch nicht mehr sagen ohne das Prog zu kennen. IMO ist das ein Synchronisierungsproblem, denn der Rechner ist sicher nicht zu schnell.
 

DP

Top Contributor
hmm... also die effekte habe ich auch ab und zu bei meiner web-applikation. im browser muss der button ab und zu erneut geklickt werden, weil sich bei ersten klick nichts rührt... imho ein windows-problem...
 

sEREAL

Mitglied
Quellen darf ich nicht einfügen, sonst steigt mir Cheffe aus Dach ^^

nuja, ich probier noch n bisschen rum
danke trotzdem
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
Esquid Datum zu Wochentag Rechner AWT, Swing, JavaFX & SWT 1
I JavaFX Fenster wird auf einem anderen Rechner anders dargestellt AWT, Swing, JavaFX & SWT 5
I Rechner programmieren AWT, Swing, JavaFX & SWT 6
A Combo Box Problem bei Schiff Rechner AWT, Swing, JavaFX & SWT 6
F Bruch Rechner AWT, Swing, JavaFX & SWT 18
F MVC Rechner AWT, Swing, JavaFX & SWT 7
A Wuerfel-Volumen Rechner AWT, Swing, JavaFX & SWT 2
H Ascii Rechner AWT, Swing, JavaFX & SWT 6
H Java Ascii Rechner Programmierung AWT, Swing, JavaFX & SWT 4
M Rechner/JVM hängt ab ca. 247 Frames AWT, Swing, JavaFX & SWT 8
G Java Rechner AWT, Swing, JavaFX & SWT 2
S Lustiges programm schnell coden? AWT, Swing, JavaFX & SWT 2
B Ressourcen laden beim Ausführen der .jar nicht schnell genug AWT, Swing, JavaFX & SWT 2
J Sehr schnell Text anzeigen? AWT, Swing, JavaFX & SWT 15
DerEisteeTrinker Swing Swing ist zu schnell für Multithreading AWT, Swing, JavaFX & SWT 18
K Graphics.drawImage() sehr schnell AWT, Swing, JavaFX & SWT 5
F nicht so schnell wie ein Applet? AWT, Swing, JavaFX & SWT 10
Juelin setzen background color für selected Row im Tableview AWT, Swing, JavaFX & SWT 21
Juelin Für Java-Spezialisten AWT, Swing, JavaFX & SWT 4
H JTabel - RowFilter Daten für Berechnung filtern AWT, Swing, JavaFX & SWT 6
I JavaFX JavaFx-Anwendung für die Erstellung einer Windows-Anwendung? AWT, Swing, JavaFX & SWT 6
M Eigene Java Klasse für allgemeine Grafikelemente AWT, Swing, JavaFX & SWT 8
M Vokabelprogram - Schleife für Liste soll schrittweise durchlaufen werden AWT, Swing, JavaFX & SWT 3
tommybalbor JavaFx Anwendung klappt nicht für macOs Nutzern, wenn ich zwei dependecies bei maven hinzufüge AWT, Swing, JavaFX & SWT 6
I Libraries für AWT für andere Grafik-Frameworks tauglich machen AWT, Swing, JavaFX & SWT 6
R auto. Importanweisungen für javafx funktioniert in Eclipse nicht mehr AWT, Swing, JavaFX & SWT 4
komplettlost Vollbildmodus für MacOs Nutzer geht nicht AWT, Swing, JavaFX & SWT 13
D JavaFX Schadensberechnung für Kartenspiel AWT, Swing, JavaFX & SWT 1
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
Jose05 JavaFX: eigene FXML-Datei für einen Button AWT, Swing, JavaFX & SWT 3
L actionListener für Button AWT, Swing, JavaFX & SWT 97
izoards Textfeld für Zeit AWT, Swing, JavaFX & SWT 4
CptK Wie funktioniert contains() für Path2D.Double AWT, Swing, JavaFX & SWT 10
T Getter und Setter für eine Stage AWT, Swing, JavaFX & SWT 6
P Swing Programm hängt sich bei Buttondruck auf? (GUI für "Chatbot" erstellen) AWT, Swing, JavaFX & SWT 15
T Button für GUI programmieren AWT, Swing, JavaFX & SWT 1
Z Switch Case für Buttons AWT, Swing, JavaFX & SWT 8
M Hough-Transformation für Kreise und andere Formen AWT, Swing, JavaFX & SWT 3
kodela HTML-tags für JLabel AWT, Swing, JavaFX & SWT 9
E Keystroke für Ausschneiden läßt sich nicht ändern AWT, Swing, JavaFX & SWT 2
M Swing Cell Renderer für Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 0
MiMa Package Struktur für GUI Programmierung AWT, Swing, JavaFX & SWT 26
N JavaFX 1 Listener für mehrere ChoiceBoxen AWT, Swing, JavaFX & SWT 3
B eclipse für JavaFx setuppen AWT, Swing, JavaFX & SWT 4
K Swing Struktur für TreeTable rekursiv aufbauen AWT, Swing, JavaFX & SWT 17
A Swing JTextField an Button übergeben für Popup-Fenster funktioniert nicht AWT, Swing, JavaFX & SWT 3
H Ein Patten für das Gluon Mobile Framework AWT, Swing, JavaFX & SWT 7
J Gibt es einen Grund für 16x16 anstatt z.B. 15x15 Tiles ? AWT, Swing, JavaFX & SWT 10
F JFormattedTextField für kg und Währung AWT, Swing, JavaFX & SWT 6
V Swing für jedes Kästchen eine eigene Farbe AWT, Swing, JavaFX & SWT 2
F Wie bekomme ich den Wert der ComboBox in eine Variable gespeichert welche ich für meinen ActionListener nutzen kann? AWT, Swing, JavaFX & SWT 3
Soloeco JavaFX Dreifachklick für MenuButton erforderlich AWT, Swing, JavaFX & SWT 2
L JavaFX Lösungsvorschläge für dieses coole Control AWT, Swing, JavaFX & SWT 8
looparda Suche Lib für Visualisierung von Graphen AWT, Swing, JavaFX & SWT 12
G LayoutManager Beliebige Anzahl von Panels für LayoutManager AWT, Swing, JavaFX & SWT 3
L Ein Actionlistener für ein Textfeld, anstatt viele Actionlistener für ein Textfeld AWT, Swing, JavaFX & SWT 7
S Swing Finde Grund für NullPointerExeption nicht. AWT, Swing, JavaFX & SWT 2
W JavaFX (j)Unittests für GUI AWT, Swing, JavaFX & SWT 0
B JavaFX JavaFX TableView PropertyValueFactory für Werte aus HashMap AWT, Swing, JavaFX & SWT 2
SchmidiMC Swing Vorschläge für ein Design AWT, Swing, JavaFX & SWT 5
Z JavaFX Pane für wechselnde Sub-Panes mit Auto-Resize AWT, Swing, JavaFX & SWT 2
S 2D-Grafik affine Transformation für Text-Shape AWT, Swing, JavaFX & SWT 0
G Swing Variable Elemente für GroupLayout AWT, Swing, JavaFX & SWT 18
kodela Accalerator für einige Menüoptionen funktioniert nicht mehr AWT, Swing, JavaFX & SWT 3
P Swing Empfehlungen für einfaches Computerspiel AWT, Swing, JavaFX & SWT 4
L DragDropped für jede Node AWT, Swing, JavaFX & SWT 0
temi JavaFX Lösungsansatz für Umsetzung gesucht AWT, Swing, JavaFX & SWT 4
J Swing JavaProgramm für Verschlüssen für eine Datei AWT, Swing, JavaFX & SWT 19
D DatePicker für Java Swing AWT, Swing, JavaFX & SWT 2
MiMa Programmeinstellungen für Anwendung?? AWT, Swing, JavaFX & SWT 54
heinz ketchup While-Schleife in einem Service für GUI AWT, Swing, JavaFX & SWT 22
L JavaFX Renderer für JavaFX AWT, Swing, JavaFX & SWT 2
MiMa GUI Controller für Border Pane als MVC Modell AWT, Swing, JavaFX & SWT 1
L Font für Dashboard AWT, Swing, JavaFX & SWT 3
F Swing JColorChooser für die JToggleButtons AWT, Swing, JavaFX & SWT 5
S JavaFX Optimierung für verschiedene Auflösungen AWT, Swing, JavaFX & SWT 12
L JavaFX Animation für Panel wechsel AWT, Swing, JavaFX & SWT 3
T Swing Drag and Drop für JComponents AWT, Swing, JavaFX & SWT 1
Kloso Swing Pseudocode für Strafurzeichnung AWT, Swing, JavaFX & SWT 4
F Konstruktor für "Vier Gewinnt" AWT, Swing, JavaFX & SWT 10
L JavaFX PdfViewer für JavaFX Anwendung AWT, Swing, JavaFX & SWT 6
R Swing Welche LayoutManager sind die richtigen für mich? AWT, Swing, JavaFX & SWT 11
L Event Handling Gui für Taschenrechner AWT, Swing, JavaFX & SWT 27
C Slider für Zeitauswahl AWT, Swing, JavaFX & SWT 3
M Limit für JFrame-Vergrößerung AWT, Swing, JavaFX & SWT 8
GreenTeaYT Button funktioniert nicht für Ein-und Auszahlungen? AWT, Swing, JavaFX & SWT 8
K Liniendicke für Line Chart dynamisch ändern AWT, Swing, JavaFX & SWT 0
K JButton nicht sichtbar machen für User 2 AWT, Swing, JavaFX & SWT 4
OnDemand Gui Themes für FX AWT, Swing, JavaFX & SWT 4
G DefaultListModel für JList AWT, Swing, JavaFX & SWT 2
P JavaFX Kalender mit Kacheln für Ereignisse AWT, Swing, JavaFX & SWT 4
S ActionListener für alle Buttons AWT, Swing, JavaFX & SWT 26
J Swing Neuen Command für "show"? AWT, Swing, JavaFX & SWT 2
sandaime Swing Thread für CMD auslesen AWT, Swing, JavaFX & SWT 16
H Swing JFileChooser für nicht existierendes Unterverzeichnis AWT, Swing, JavaFX & SWT 3
R Java FX - Fxml - relative Größenangaben für Breite und Höhe einer TextArea AWT, Swing, JavaFX & SWT 8
D GUI-Bau für ein Auswertungs-Tool AWT, Swing, JavaFX & SWT 11
L Swing CellRenderer für einzelne Zellen? AWT, Swing, JavaFX & SWT 5
RalleYTN Swing Menü für Texteditor (Rechtsklick) AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben