modaalisen jdialogin?
miten saa globaalisti haettua
päällimmäisen
2354
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 2
Vanhimmat
Olisiko alla olevasta esimerkistä apua. Esimerkki luokassa oleva "heaPäälinmäinenModaalinenJDialog()" metodi palauttaa sen modaalisen JDialogin jolla on fokus. Jos modaalisella JDialogilla ei ole fokusta hallussa, palauttaa metodi silloin sen modaalisen JDialogin joka toimii isäntänä ikkunalle jolla on fokus. Jos tällaistakaan ei ole, palauttaa metodi arvon null.
--- ESIMERKKI ALKAA ---
import java.awt.Window;
import javax.swing.JDialog;
public class Esimerkki {
public static Window haeIkkunaJollaFocus() {
Window[] ikkunat = JDialog.getWindows();
for (Window ikkuna : ikkunat)
if (ikkuna.isFocused())
return ikkuna;
return null;
}
private static Window ratkaiseOikeanlainenOmisaja(Window ikkuna) {
if (ikkuna == null)
return null;
if (ikkuna instanceof JDialog)
if (((JDialog) ikkuna).isModal())
return ikkuna;
return ratkaiseOikeanlainenOmisaja(ikkuna.getOwner());
}
public static JDialog heaPäälinmäinenModaalinenJDialog() {
Window ikkuna = ratkaiseOikeanlainenOmisaja(haeIkkunaJollaFocus());
return (ikkuna != null) ? (JDialog) ikkuna : null;
}
}
--- ESIMERKKI LOPPUU ---
ei tuo getWindows()-metodi osunut oikeen silmään vaikka olin varma et semmoinen jossain on...