Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Java-classe FileDialog

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    3

    Java-classe FileDialog

    Non riesco ad intercettare la chiusura di un oggetto FileDialog.
    Gli ho associato un oggetto WindowListener ma facendo il debug mi accorgo che non entra nele procedure d'evento WindowClosed etc...
    Io vorrei fare comparire il contenuto del file nella finestra principale al momento della chiusura della finestra di dialogo ma dato che non riesco ad intercettare questo evento mi è impossibile farlo.
    Come posso intercettare la chiusura di una finestra FileDialog ?

  2. #2
    non uso molto AWT, ma FileDialog non è una Dialog modale?

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    Mah... Io uso il package Swing e uso FileChooser...

    Do un'occhiata alla Documentazione...


  4. #4
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Come dice claudibus la classe FileDialog apre una finestra di dialogo modale, quindi non ti serve intercettare la chiusura della finestra perchè l'applicazione si blocca quando apri il dialog e riparte dall'istruzione successiva quando clicchi ok o annulla:

    codice:
    java.awt.FileDialog fd = new java.awt.FileDialog(this,"Scegli il file da caricare",java.awt.FileDialog.LOAD);
    fd.setVisible(true);
    String s = fd.getDirectory() + fd.getFile();
    System.out.println(s);
    Dopo questo nella variabile 's' hai il nome del file e puoi usarlo per creare un (ad es.) FileInputStream per leggerlo e farne quello che vuoi.
    ghinz

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    :quote: :quote: :quote:

    Si infatti il FileDialog lo usi per scegliere un File... Quindi se annulli si chiude semplicemente altrimenti ti restituisce il File che hai selezionato...


  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    3
    si ma quando si chiude io vorrei fare vedere il contenuto del file in un oggetto
    TextArea, ma per fare questo devo intercettare l'evento di chiusura per mettere li' il codice di lettura del file, altrimenti in quale procedura d'evento posso metterlo?

  7. #7
    nella riga successiva.

  8. #8
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Poni di aver creato un JFrame che contiene un JButton di nome 'pulsante' e una JTextArea di nome 'area'.
    Alla pressione di 'pulsante' metti:
    codice:
    java.awt.FileDialog fd = new java.awt.FileDialog(this,"Scegli il file da caricare",java.awt.FileDialog.LOAD);
    fd.setVisible(true);
    // --- qui l'applicazione si blocca in attesa che tu scelga un file e prema ok o annulla
    // --- quando hai premuto ok o annulla riprende l'esecuzione dall'istruzione qui sotto
    String s = fd.getDirectory() + fd.getFile();
    FileRead fr = new FileReader(s);
    // --- qui metti le istruzioni per leggere il file dentro una variabile String di nome 'testo'
    // --- riempi la textarea
    area.setText(testo);
    Capito?
    ghinz

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    3
    ragazzi ho risoloto tutto.Mi ero dimenticato cosa significa finestra modale.
    Ma quando ho visto che tutti battevate su questa definizione mi sono ricordato che l'esecuzione ricomincia alla istruzione successiva a quella che chiama la Dialog.
    Grazie per l'input :-)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.