Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [NETBEANS] Jmenu

  1. #1

    [NETBEANS] Jmenu

    Ho realizzato diverse form per gestire le varie tabelle di un mio database, vorrei richiamarle tramite un JMenu, ma purtroppo non risco ad associare alla voce del Menu il form

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [NETBEANS] Jmenu

    Originariamente inviato da smok3
    Ho realizzato diverse form per gestire le varie tabelle di un mio database, vorrei richiamarle tramite un JMenu, ma purtroppo non risco ad associare alla voce del Menu il form
    Tralasciamo un momento NetBeans e vediamo la questione dal punto di vista di Swing. Come dico sempre, è bene vedere la questione in generale. Non uso e non conosco Eclipse/NetBeans e quindi non so dirti dove andare/cosa cliccare per fare un menù. Ma non ha importanza, bisogna prima capire cosa può fare Swing!

    I contenitori "top-level" come JApplet, JFrame, JDialog (anche JInternalFrame che non è "top-level") hanno il metodo:

    public void setJMenuBar(JMenuBar menuBar)

    Pertanto innanzitutto va creato un JMenuBar da assegnare con il metodo sopra alla finestra.
    Ad un JMenuBar si possono aggiungere dei JMenu. Ad ogni JMenu si possono aggiungere dei JMenuItem che possono anche essere dei JCheckBoxMenuItem o JRadioButtonMenuItem o a sua volta dei JMenu.

    Quindi si ha una cosa del tipo:

    codice:
    JMenuBar menuBar = new JMenuBar();
    
    JMenu menuFile = new JMenu ("File");
    menuBar.add (menuFile);
    
    JMenuItem itemApri = new JMenuItem ("Apri");
    menuFile.add (itemApri);
    
    tuoFrame.setJMenuBar (menuBar);
    Ai JMenuItem in genere si applicano degli ActionListener per ascoltarne la selezione (ma si possono anche usare le Action).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Perfetto

    ora come associo alla voce
    "Form1" il metodo per aprire il relativo Form (che ovviamente risiede in un altra classe)

  4. #4
    Codice PHP:
    tuoMenuItem.addActionListener(new java.awt.event.ActionListener() {
       public 
    void actionPerformed(java.awt.event.ActionEvent evt) {
          
    JFrame tuoFrame = new JFrame();

          
    //se nel costruttore del tuo JFrame non c'è la chiamata a setVisible aggiungi:
          //tuoFrame.setVisible(true);
       
    }
    }); 
    Al mio segnale... scatenate l'inferno!

  5. #5
    Utente di HTML.it L'avatar di Landi
    Registrato dal
    Jun 2012
    residenza
    Torino
    Messaggi
    39
    Originariamente inviato da R@ve M@ster
    Codice PHP:
    tuoMenuItem.addActionListener(new java.awt.event.ActionListener() {
       public 
    void actionPerformed(java.awt.event.ActionEvent evt) {
          
    JFrame tuoFrame = new JFrame();

          
    //se nel costruttore del tuo JFrame non c'è la chiamata a setVisible aggiungi:
          //tuoFrame.setVisible(true);
       
    }
    }); 

    Ho lo stesso problema di smok3 solo che scrivendo l'istruzione

    Clienti.setJMenuItem(clienti);

    e mi segnala errore in setJMenuItem, provando a mettere setJMenuBar mi scrive:

    codice:
    method setJMenuBar in class javax.swing.JFrame cannot be applied to given types;
      required: javax.swing.JMenuBar
      found: javax.swing.JMenuItem
      reason: actual argument javax.swing.JMenuItem cannot be converted to javax.swing.JMenuBar by method invocation conversion


    Riesci ad illuminarmi??

  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Landi
    codice:
    method setJMenuBar in class javax.swing.JFrame cannot be applied to given types;
      required: javax.swing.JMenuBar
      found: javax.swing.JMenuItem
      reason: actual argument javax.swing.JMenuItem cannot be converted to javax.swing.JMenuBar by method invocation conversion
    Riesci ad illuminarmi??
    Basta leggere l'errore.

    Il metodo setJMenuBar vuole che gli passi un oggetto di tipo JMenuBar e tu invece gli stai passando un oggetto di tipo JMenuItem. La soluzione? Passagli (banalmente) il tipo giusto! Senza vedere il tuo codice non si può dire altro...

    edit: noto adesso, necroposting
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  7. #7
    Utente di HTML.it L'avatar di Landi
    Registrato dal
    Jun 2012
    residenza
    Torino
    Messaggi
    39
    Originariamente inviato da Alex'87
    Basta leggere l'errore.

    Il metodo setJMenuBar vuole che gli passi un oggetto di tipo JMenuBar e tu invece gli stai passando un oggetto di tipo JMenuItem. La soluzione? Passagli (banalmente) il tipo giusto! Senza vedere il tuo codice non si può dire altro...

    edit: noto adesso, necroposting
    Avevo immaginato di risollverare una discussione un po' datata ..chiedo scusa!

    Comunque ho provato a passargli l'oggetto giusto ovvero la barra del menu che ho chiamato bar, ma non va in ogni caso e setJMenuItem non penso esista e anche se gli passo il tipo corretto segnala errore...

    Grazie comunque!!

  8. #8
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Landi
    Avevo immaginato di risollverare una discussione un po' datata ..chiedo scusa!

    Comunque ho provato a passargli l'oggetto giusto ovvero la barra del menu che ho chiamato bar, ma non va in ogni caso e setJMenuItem non penso esista e anche se gli passo il tipo corretto segnala errore...

    Grazie comunque!!
    Se non fai vedere cosa hai scritto non ti si può aiutare, non abbiamo la sfera di cristallo!

    setJMenuItem non esiste e non capisco da dove salti fuori, quando sei in dubbio dai una occhiata alla documentazione ufficiale Sun (Oracle).
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  9. #9
    Utente di HTML.it L'avatar di Landi
    Registrato dal
    Jun 2012
    residenza
    Torino
    Messaggi
    39
    Originariamente inviato da Alex'87
    Se non fai vedere cosa hai scritto non ti si può aiutare, non abbiamo la sfera di cristallo!

    setJMenuItem non esiste e non capisco da dove salti fuori, quando sei in dubbio dai una occhiata alla documentazione ufficiale Sun (Oracle).
    Sono giorni che leggo la documentazione nella speranza di capire qualcosa!

    Comunque setJMenuItem era una mia "prova" avevo intuito che non esiste
    Siccome sto facendo uno stage e questa parte di programma non l'ho ancora affrontata a scuola, domani il capo ha detto che mi da qualche dritta (nonostante non sappia nulla di Java )

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.