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

    [Java] Chiarimenti su come fare...

    salve a tutti,
    sono un neofita di java, ma voglio comunque testare le mie conoscenze e realizzare un piccolo programmino, ma durante la compilazione mi è sorto qualche problemino: :master:
    1- Ho creato un JFrame e un JPanel e gli ho impostato il border layout,anche se è di default. Nella regione superiore ("North"),gli ho inserito un menu, creando anche il controllo degli eventi su tutte le voci del menu.Fin qui nessun problema, però non riesco a capire come far visualizzare gli eventi derivanti dalla voce del menu nella regione centrale del JPanel.

    2-Come creare un collegamento a un url quando viene premuto un bottone.

    Grazie per l'aiuto e spero di essere stato chiaro.

    grazie

  2. #2
    1) solitamente ad ogni JMenuItem è associato un ActionListener (jMenuItem.addActionListener(new ActionListener() { ... })

    all'interno del metodo actionPerformed dell'actionListener metti il codice che modifica il contenuto del jPanel

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

    Re: [Java] Chiarimenti su come fare...

    Originariamente inviato da defi1000
    Nella regione superiore ("North"),gli ho inserito un menu
    Normalmente (e tipicamente) la barra del menù (parlo proprio di un JMenuBar) la si assegna ad un JFrame con il suo metodo speciale setJMenuBar(JMenuBar menubar). Insomma, generalmente menù singoli o la barra dei menù non si mettono dentro un layout!

    Originariamente inviato da defi1000
    però non riesco a capire come far visualizzare gli eventi derivanti dalla voce del menu nella regione centrale del JPanel.
    Intanto dovresti precisare cosa intendi per "visualizzare gli eventi" ... che di per sé non vuol dire nulla. Un evento è una notifica che la tua applicazione riceve internamente attraverso un apposito "listener" (ActionListener in questo caso). Cosa fai tu, con del tuo codice, nel actionPerformed() del listener in risposta a questo evento .... sono questioni tue .... e non hai precisato cosa pensavi di fare.

    Originariamente inviato da defi1000
    2-Come creare un collegamento a un url quando viene premuto un bottone.
    Anche qui dovresti precisare bene cosa intendi (perché dire "un collegamento a un url" non vuol dire nulla di chiaro/particolare):

    a) Fare in modo che il browser predefinito nel sistema (o uno specifico) venga avviato (esternamente alla tua applicazione) e si apra su quel URL?

    b) Fare in modo che la pagina a quel URL sia visualizzata dentro la tua applicazione usando un certo componente (in pratica "incapsulare" un apposito motore di rendering di un browser o simile nella tua applicazione)?

    c) Fare in modo che la applicazione, "programmaticamente" con del codice, si connette al URL e legge il contenuto della response mettendolo in un String o altro (o scaricandolo su file)?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Scusatemi se non ho risposto prima,
    cmq vorrei rispondere a andbin riguardo alle domande a me poste:
    1
    Citazione: Originariamente inviato da defi1000 Nella regione superiore ("North"),gli ho inserito un menu Normalmente (e tipicamente) la barra del menù (parlo proprio di un JMenuBar) la si assegna ad un JFrame con il suo metodo speciale setJMenuBar(JMenuBar menubar). Insomma, generalmente menù singoli o la barra dei menù non si mettono dentro un layout!
    Qui mi sono spiegato male perché ho fatto quello che hai descritto prima tu,anche perché così si fa;

    2
    Citazione: Originariamente inviato da defi1000 però non riesco a capire come far visualizzare gli eventi derivanti dalla voce del menu nella regione centrale del JPanel. Intanto dovresti precisare cosa intendi per "visualizzare gli eventi" ... che di per sé non vuol dire nulla. Un evento è una notifica che la tua applicazione riceve internamente attraverso un apposito "listener" (ActionListener in questo caso). Cosa fai tu, con del tuo codice, nel actionPerformed() del listener in risposta a questo evento .... sono questioni tue .... e non hai precisato cosa pensavi di fare.
    Qui nella gestione del menu nel actionPerformed() a ogni Item (valutando la condizione nel if) inserisco delle istruzioni che mi portano a visualizzare in un nuovo JPanel dei label e richieste varie.
    Ora volevo dire che questo panel lo voglio far visualizzare nalla zona center del frame.

    3
    Citazione: Originariamente inviato da defi1000 2-Come creare un collegamento a un url quando viene premuto un bottone. Anche qui dovresti precisare bene cosa intendi (perché dire "un collegamento a un url" non vuol dire nulla di chiaro/particolare):
    Questo vole fare:
    Fare in modo che il browser predefinito nel sistema (o uno specifico) venga avviato (esternamente alla tua applicazione) e si apra su quel URL

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da defi1000
    Qui nella gestione del menu nel actionPerformed() a ogni Item (valutando la condizione nel if) inserisco delle istruzioni che mi portano a visualizzare in un nuovo JPanel dei label e richieste varie.
    Ora volevo dire che questo panel lo voglio far visualizzare nalla zona center del frame.
    E quale è il dubbio? Rimuovi il componente attuale nella parte CENTER, aggiungi un nuovo componente (un tuo JPanel) nella parte CENTER, invochi validate() sul content pane (che è dove hai appena fatto le due operazioni prima).

    Originariamente inviato da defi1000
    Questo vole fare:
    Fare in modo che il browser predefinito nel sistema (o uno specifico) venga avviato (esternamente alla tua applicazione) e si apra su quel URL
    Da Java 6 vedi java.awt.Desktop e il suo metodo browse(URI uri).

    Per qualunque altra versione di Java, dovresti lanciare un apposito comando (system-dependent!) tramite exec() di Runtime.
    Sui sistemi Windows dovrebbe essere una cosa del tipo, se non sbaglio:

    Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler http://....blabla....");

    Per altri S.O. non so, è tutto da vedere.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    502
    A completamento di quello che ha detto andbin sulla classe Desktop in Java 6, trovi utili informazioni qui
    al volante son nervoso

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.