Avatar billede backupmand Nybegynder
25. januar 2004 - 14:51 Der er 3 kommentarer og
1 løsning

setModal(true) virker ikke som forventet

Mit problem er, at jeg under runtime ved tryk på en knap bringer en JDialog frem. Denne JDialog indeholder nogle forskellige knapper, hvor brugeren ikke skal have mulighed for at gå ind i det oprindelige vindue, hvis der trykkes på en specifik knap. Til dette formål benytter jeg setModal(true) under den pågældende knaps eventhandler kode i actionPerformed metoden ... men det virker ikke .... Jeg har for sjov forsøgt at bruge setModal(true) i konstruktøren, dvs idet min JDialog kommer til syne .. dette virker .. men ikke når jeg bruger det senere.. hvorfor? nogle der ved dette? Eller findes der en anden metode eller fremgangsmåde, således at der ved tryk på en knap ikke har mulighed for at komme ind i JDialog'ens source frame?
Avatar billede backupmand Nybegynder
25. januar 2004 - 14:53 #1
Ah .. det var lidt uheldigt formuleret i starten- Min JDialog er en dialog indeholdende nogle forskellige knapper. Ved tryk på én af knapperne skal man ikke have mulighed for at forlade dialogboksen
Avatar billede _carsten Nybegynder
25. januar 2004 - 22:00 #2
Det kan ikke lade sig gøre, du kan ikke ændre en JDialogs modal state, efter show()
er kaldt. setModal(boolean value) skal/kan kaldes i constructor eller under alle omstændigheder FØR show()

Altså, inden en JDialog vises på skærmen, skal du have taget en beslutning m.h.t. om
den skal være modal eller ej.
Avatar billede _carsten Nybegynder
25. januar 2004 - 22:07 #3
Den eneste måde du kan omgå det på, er vel at sætte modal == true og så disable
JDialogen's lukke funktion hvis der trykkes på denne specifikke knap.
Avatar billede backupmand Nybegynder
25. januar 2004 - 22:51 #4
Godt jeg bliver nødt til at sætte den til at være modal==true, det vil løse mit problem.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester