ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
3103
3103
EMPFEHLEN
-
Morgen!
Ich hab da mal eine kleine Frage:
Wenn man aufeinen Button klickt, der ein Label sichtbar macht und ein anderes unsichtbar, wird die Ansicht erst gewechselt, wenn actionPerformed() durchgelaufen ist.
Gibt es etwas womit man sie die Sichbarkeit der Labels (sehbar) ändern kann, bevor die Funktion beendet wurde? Unter VB (*) konnte man sowas mit doEvents machen. Hat Java irgendwas änliches in der Richtung?
Momentan hab ich dafür nur einen unschönen Workaround mit einem TimerTask
(JDK-Version: Tiger)
(*: Nein, ich kann mehr Sprachen als VB :P)
-
08.04.05 14:45 #2
- Registriert seit
- Mar 2001
- Ort
- München
- Beiträge
- 4.785
Was machst du denn soviel in deiner actionPerformed() Methode?
Wenn hier eine ganze Menge abläuft, solltest du jenes in einen
Thread auslagern.Erst wenn der letzte Programmierer eingesperrt...
...und die letzte Idee patentiert ist, werdet ihr merken, dass Anwälte nicht programmieren können.
-------------------
chris: hey Tom hast du eigentlich ne Freundin
jdar: ich bin tutorials.de Mod!
-
11.04.05 18:54 #3
- Registriert seit
- Jun 2002
- Ort
- Saarbrücken (Saarland)
- Beiträge
- 9.886
- Blog-Einträge
- 29
Hallo!
Wshalb rufst du setVisible(false) an dem jeweiligen JLabel nicht schon vor Beginn der langlaufenden Logik auf?
Gruß TomJava rocks!
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
-
Tom:
Doch, mach ich natürlich, aber das ignoriert er gekonnt...
Ich habs jetzt mit nem Thread gemacht wie Christian es vorgeschlagen hat.
Christian:
Ich durchparse ein Verzeichnis nach Dateien. Und jenach dem wie viele Dateien da drinne sind, kann das natürlich nen bissel dauern.
-
11.04.05 19:29 #5
- Registriert seit
- Jun 2002
- Ort
- Saarbrücken (Saarland)
- Beiträge
- 9.886
- Blog-Einträge
- 29
Hallo!
Stimmt durch die langlaufende Aktion ist der EDT so lange beschäftigt, dass dieser gar nicht mehr zum veranlassen des Neuzeichnens kommt...
Dann eben in einem eigenen neuen Thread:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
/** * */ package de.tutorials; import java.awt.BorderLayout; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.concurrent.Executors; import javax.swing.JFrame; import javax.swing.JLabel; /** * @author Tom */ public class JFrameExample extends JFrame { JLabel lblA, lblB; public JFrameExample() { super("JFrameExample"); setDefaultCloseOperation(EXIT_ON_CLOSE); lblA = new JLabel("A"); add(lblA, BorderLayout.WEST); lblB = new JLabel("B"); add(lblB, BorderLayout.EAST); lblA.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent evt) { lblB.setVisible(false); Executors.defaultThreadFactory().newThread(new Runnable() { public void run() { try { Thread.sleep(3000L); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("finish!"); } }).start(); } }); pack(); setVisible(true); } /** * @param args */ public static void main(String[] args) { new JFrameExample(); } }
generell sollte man langandauernde Operationen NIE in Methoden der Ereignisbehandlung ablaufen lassen, da diese bis zu ihrer vollständigen Abarbeitung das neuzeichnen der GUI verhindern.
Gruß TomJava rocks!
How to become a good Java Programmer?
Does IT in Java and .Net
The only valid measurement of code quality: WTFs / minute
Blog
Xing
Twitter
Ähnliche Themen
-
"Eager" statt "Lazy" bei Java Remote Object Activation
Von -ben- im Forum JavaAntworten: 3Letzter Beitrag: 15.04.09, 14:42 -
kurze Pause mit "DoEvents" (so heiß es in vb)
Von deusfalsus im Forum .NET CaféAntworten: 4Letzter Beitrag: 24.06.08, 10:49 -
Zugriff auf args[0] in "Test1View" unter Netbeans - Java Desktop Application
Von leftitbe im Forum Java GrundlagenAntworten: 8Letzter Beitrag: 01.04.08, 16:13 -
"DoEvents" -> Javascript?
Von C-H im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 20.04.06, 16:44 -
mit "gsprint" und "system" unter php drucken
Von daniu im Forum PHPAntworten: 3Letzter Beitrag: 13.05.04, 22:26





Zitieren

Login





