MouseListener a okno dialogowe

Odpowiedz Nowy wątek
Diomedes
2008-08-06 11:56
Diomedes
0

Mam następujący problem: mam okno dialogowe uruchamiane kliknięciem na JButton w głównym panelu, które pobiera liczbę od użytkownika, po zamknięciu okna dialogowego chcę tę liczbę zapisać na panelu głównym. Jak to zrobić? Może się o komuś wydać banalne, ale pisałem z książką, próbowałem różnych znalezionych na nacie sposobów i... nic. Z góry dziękuję za wszelaką pomoc.

Pozostało 580 znaków

2008-08-06 12:59
Moderator

Rejestracja: 11 lat temu

Ostatnio: 1 rok temu

0

Jakiej klasy jest okno dialogowe ?
Jedna możliwość to przekazać do okna dialogowego referencje do okna głównego.

...
OknoDialogowe dialog=new OknoDialogowe(this);
....
dialog.setVisible(true);

a w oknie dialogowym

private parent;
....
public OknoDialogowe(OknoGlowne parent)
{
     this.parent=parent;
    ....
}
.....
parent.jakisElement.setText(to_co_wpisano_w_oknie_dialogowym);

To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell

Pozostało 580 znaków

Diomedes
2008-08-06 14:40
Diomedes
0

public void mouseClicked(MouseEvent arg0) {
JTextField stawka_tf = new JTextField();
stawka_tf.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent zdarzenie) {
char znak = zdarzenie.getKeyChar();
if (znak < '0' || znak > '9')
zdarzenie.consume();
}
});
int answer = JOptionPane.showOptionDialog(null,
new Object[] { "Podnieś stawkę o:", stawka_tf },
"Podnieś stawkę", JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, null, null, null);
if (answer == JOptionPane.OK_OPTION) {
stawka_tf.getText();
}

            }

W tej chwili okno jest wywoływane metodą show. Czy da się uniknąć tworzenia nowej klasy dla tego jednego okna?

Pozostało 580 znaków

Diomedes
2008-08-07 14:07
Diomedes
0

Jakbym nie kombinował wiecznie jest problem, poniewarz mouseListener nie może zwracać wartości.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0