Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636

    Finestra Analisi in corso...

    Ciao a tutti
    Ho fatto un'interfaccia utente.
    Ora vorrei che ad un certo punto e dovtuo ad un determinato evento mi si apri al centro dello schermo una finestra che mi comunichi cosa sta avvenendo...per esempio:

    INIZIO ANALISI.... (poi in append)
    SALVATAGGIO FILE...(ancora in append)
    OPERAZIONE TERMINATA.

    Devo usare una JTextArea o cosa?

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

    Re: Finestra Analisi in corso...

    Originariamente inviato da jurij7
    Devo usare una JTextArea o cosa?
    Una JTextArea può andare bene.
    L'unica questione è che le varie operazioni devi farle in un thread separato, non puoi occupare il EDT (event dispatch thread).
    E ti va anche bene che il append() di JTextArea è documentato come "thread safe", quindi non ci sono problemi ad invocarlo da un altro thread che non è il EDT.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    In che senso in un thread separato?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da jurij7
    In che senso in un thread separato?
    Quella sequenza di operazioni presumo che la avvii a seguito di un click su qualcosa (pulsante, menù o altro) .... in generale a seguito di un qualche "evento" sulla tua interfaccia utente. Quando ricevi notifica dell'evento (nei metodi dei listener che implementi) sei nel contesto del EDT. Questo non lo devi mai bloccare per operazioni potenzialmente lunghe. Devi creare ed avviare un nuovo thread in cui eseguire le tue operazioni "lunghe". E se nel tuo thread separato devi interagire con la interfaccia utente, devi farlo con le dovute precauzioni. Se usi metodi thread safe (come quello che ho indicato) allora è ok. Altrimenti devi farlo nel contesto del EDT (quindi usare i metodi invokeLater/invokeAndWait di SwingUtilities).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    Allora il tutto si avvia quando clicco su un bottone e l'operazione non è molto lunga
    Potresti postarmi un codice di esempio?

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.