/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Kollapsende menu
Fra : Soren Kuula


Dato : 30-01-04 18:06

Hejsa,

Når man nester en masse JMenus ind i hinanden (stakkels bruger), så man
får samme effekt som Windows' Start menu :

JPopupMenu root = new JPopupMenu();
JMenu node1 = new JMenu("1");
root.add(node)

JMenu node2 = new JMenu("1.1");
node1.add(node2);

JMenu node3 = new JMenu("1.1.1");
node2.add(node3);

node3.add(new JMenuItem("Endelig fremme !"));

-- og man viser root, og vælger "Endelig fremme !" og slipper mustasten,
så kollapser alle popup menuerne fra root ud til node3.

Hvis jeg erstatter JMenuItemet ("endelig fremme") med en anden Component
(jeg har brug for at kunne mase en vilkårlig Component ind i menuen), så
ved jeg ikke hvordan jeg skal opnå den samme virkning ... at klappe hele
stien af popup's ud til min Component sammen (gøre dem usynlige).

Er der nogen der ved hvordan JMenuItem gør tricket ?? Den i mit
ekspempel her jo ikke nogen direkte referencer til roden i menutræet -
den kalder nok en eller anden metode på sig selv, dom så rekurserer
videre til (komponent)parent. Men hvilken metode er det ?

MVH
*Søren


 
 
Ulrik Magnusson (01-02-2004)
Kommentar
Fra : Ulrik Magnusson


Dato : 01-02-04 14:51



Soren Kuula wrote:

> Er der nogen der ved hvordan JMenuItem gør tricket ?? Den i mit
> ekspempel her jo ikke nogen direkte referencer til roden i menutræet -
> den kalder nok en eller anden metode på sig selv, dom så rekurserer
> videre til (komponent)parent. Men hvilken metode er det ?

Kig på javax.swing.MenuSelectionManager.clearSelectedPath() -
den kaldes fra JPopupMenu.setVisible():

Ulrik Magnusson


Soren Kuula (01-02-2004)
Kommentar
Fra : Soren Kuula


Dato : 01-02-04 16:09

Ulrik Magnusson wrote:
>>Er der nogen der ved hvordan JMenuItem gør tricket ?? Den i mit
>>ekspempel her jo ikke nogen direkte referencer til roden i menutræet -
>>den kalder nok en eller anden metode på sig selv, dom så rekurserer
>>videre til (komponent)parent. Men hvilken metode er det ?
>
> Kig på javax.swing.MenuSelectionManager.clearSelectedPath() -
> den kaldes fra JPopupMenu.setVisible():

Allah være lovet ! Det var tricket.

Jeg burde egentlig have kunnet regne ud at det var noget statisk
snadder, da det ikke højner forståelsen at have mere end en menu fremme
ad gangen overhovedet.

MVH
Søren
--
Fjern de 4 bogstaver i min mailadresse som er indsat for at hindre s...
Remove the 4 letter word meaning "junk mail" in my mail address.


Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408183
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste