O
Oekel
Gast
Hi Leute, ich versuche nun seid 2Std, dem Misterium von Fenstern auf den Grund zu gehen, die nicht in der Main erzeugt werden.
Folgendes soll aus irgendeinem Programmteil aufgerufen werden:
new Info();
Folgendes soll passieren:
Das Fenster erscheint mit dem Wert 3
ändert sich nach kurzer Zeit auf 2 usw.
Fenster schließt sich und der Programmfluss soll nach "new Info();" weitergehen.
Sinn des ganzen:
Es soll eine Art Abbruchfenster werden, welches einen Counter Anzeigt, wie lange man noch "Abrechen" drücken kann.
Leider passiert nur folgendes:
Das Fenster wird erst angezeigt, wenn die Zahl 1 draufsteht und schließt sich dann auch nicht selber.
Meine Vermutung:
repaint wird est ausgeführt, nach dem die koplette Methode abgearbeitet worden ist?
Könnt ihr mir helfen, bzw. einfach am Code rumfuschen, so dass es laufen könnte?
===============================================
PS: gibt es Java-Bibliotheken, die das gleiche leisten wie folgendes:
vor allem, so dass man auch über die dann aufgebaute Verbindung mit dem Systembrowser surfen und downloaden kann?[/code]
Folgendes soll aus irgendeinem Programmteil aufgerufen werden:
new Info();
Folgendes soll passieren:
Das Fenster erscheint mit dem Wert 3
ändert sich nach kurzer Zeit auf 2 usw.
Fenster schließt sich und der Programmfluss soll nach "new Info();" weitergehen.
Sinn des ganzen:
Es soll eine Art Abbruchfenster werden, welches einen Counter Anzeigt, wie lange man noch "Abrechen" drücken kann.
Code:
public class Info extends JWindow implements ActionListener {
private int count = 3;
private JButton countb = new JButton();
public Info() {
countb.addActionListener(this);
JPanel content = (JPanel) getContentPane();
content.setBackground(Color.white);
int width = 50;
int height = 50;
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
int x = (screen.width - width);
int y = (screen.height - height-25);
setBounds(x, y, width, height);
add(countb, BorderLayout.CENTER);
Color oraRed = new Color(156, 20, 20, 255);
// this.setBorder(BorderFactory.createLineBorder(oraRed, 10));
while(count > 0)
{
countb.setText(String.valueOf(count));
try
{
Thread.sleep(300);
} catch (Exception e)
{
}
count--;
repaint();
}
dispose();
setVisible(true);
}
Leider passiert nur folgendes:
Das Fenster wird erst angezeigt, wenn die Zahl 1 draufsteht und schließt sich dann auch nicht selber.
Meine Vermutung:
repaint wird est ausgeführt, nach dem die koplette Methode abgearbeitet worden ist?
Könnt ihr mir helfen, bzw. einfach am Code rumfuschen, so dass es laufen könnte?
===============================================
PS: gibt es Java-Bibliotheken, die das gleiche leisten wie folgendes:
Code:
Process p = Runtime.getRuntime().exec(
"rasphone.exe -t,RnaDial <<name>>");
p.waitFor();