Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [Java] Visualizzare un dialog dal menu a discesa.

    Salve a tutti
    ho la necessità di visualizzare un dialog da un menu a discesa clickano sulla relativa voce come i programmi windows fanno quando la voce di un menu ha i "..." dopo.
    Ho creato una classe principale che disegna l'interfaccia grafica della mia applicazione inserendo i vari menu a discesa.
    Poi ho creato la finestra di dialogo impostandone la visibilità a false.
    Infine ho creato una classe che implementa l'interfaccia actionlistener e la vorrei collegare ad una delle voci del menu a discesa. Come posso fare?
    Le voci sono oggetti JMenu. Ho provato ad aggiungere un'istanza della classe ascoltatore ma non so come fargli capire che al click del menu 1 mi deve aprire il dialog 1, al 2 il 2, ecc ecc

    Qualcuno mi sa aiutare oppure dare qualche link utile per risolvere questo problema?

    Grazie a chi mi risponderà!
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  2. #2

    Re: [Java] Visualizzare un dialog dal menu a discesa.

    Originariamente inviato da Nunkij
    Salve a tutti
    ho la necessità di visualizzare un dialog da un menu a discesa clickano sulla relativa voce come i programmi windows fanno quando la voce di un menu ha i "..." dopo.
    Ho creato una classe principale che disegna l'interfaccia grafica della mia applicazione inserendo i vari menu a discesa.
    Poi ho creato la finestra di dialogo impostandone la visibilità a false.
    Infine ho creato una classe che implementa l'interfaccia actionlistener e la vorrei collegare ad una delle voci del menu a discesa. Come posso fare?
    Le voci sono oggetti JMenu. Ho provato ad aggiungere un'istanza della classe ascoltatore ma non so come fargli capire che al click del menu 1 mi deve aprire il dialog 1, al 2 il 2, ecc ecc

    Qualcuno mi sa aiutare oppure dare qualche link utile per risolvere questo problema?


    Grazie a chi mi risponderà!
    Mi sembra una cosa banale.Innanzitutto le voci di menu sono dei JMenuItem non dei JMenu che mi risulti.In secondo luogo una volta che hai associato un ActionListener devi solo implementare il suo metodo actionPerformed in modo che esso abbia l'istruzione pannelloDaVisualizzare.setVisible(true)
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  3. #3
    Sono riuscito ad aprire il dialog! Ora però non riesco ad implementare il bottone ANNULLA.
    E' una richiesta di terminazione del programma. Clicki su exit nel menu. Si apre il dialog d conferma. Se premi ok si chiude tutto se premi annulla dovrebbe nascondere il menu. Il problema è che nell'action event chiamato quando clicko su annulla non riesco a passare un riferimento alla finestra da nascondere. Come posso fare?
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  4. #4
    Originariamente inviato da Nunkij
    Sono riuscito ad aprire il dialog! Ora però non riesco ad implementare il bottone ANNULLA.
    E' una richiesta di terminazione del programma. Clicki su exit nel menu. Si apre il dialog d conferma. Se premi ok si chiude tutto se premi annulla dovrebbe nascondere il menu. Il problema è che nell'action event chiamato quando clicko su annulla non riesco a passare un riferimento alla finestra da nascondere. Come posso fare?
    Invece di creare il dialog come JDialo semplice crei una classe ch eeredita da esso e la fornisci di un costruttore in cui passi il riferimento che ti serve
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  5. #5
    Ok ho risolto! Mi sn dannato il pomeriggio ma ce l'ho fatta!

    Per chi avesse il mio stesso problema ecco una possibile soluzione!

    codice:
    					ActionListener alAnnullaButton = new butListener_EscAnnulla(){
    													
    													       	public void actionPerformed(ActionEvent e){  
           																dlgEsc.setVisible(false);  
           														}
        												};
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  6. #6
    Originariamente inviato da Nunkij
    Ok ho risolto! Mi sn dannato il pomeriggio ma ce l'ho fatta!

    Per chi avesse il mio stesso problema ecco una possibile soluzione!

    codice:
    					ActionListener alAnnullaButton = new butListener_EscAnnulla(){
    													
    													       	public void actionPerformed(ActionEvent e){  
           																dlgEsc.setVisible(false);  
           														}
        												};
    dlgEsc deve essere una variabile locale con modificatore final se è locale al metodo in cui si trova questo codice oppure un capo della classe cui il metodo appartiene.
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

  7. #7
    Sì infatti è dichiarata final me l'ero scordato!
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.