Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Refresh di frame

  1. #1

    Refresh di frame

    Qual'è il modo migliore per 'aggiornare' il contentPane di un JFrame dopo che ha subito modifiche da un evento? Per modifiche intendo aggiunta e/o rimozioni di componenti, modifiche del layout manager, ecc.
    Digicasper ;-)

  2. #2
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    non so se è il modo migliore.. io comunque uso il metodo .setViewportView() tramite quale riassegno il pannello da visualizzare..
    odio chi parla di politica..
    anzi vorrei fondare un partito contro tutto ciò

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    96
    repaint() è lì proprio per questo. Se poi le modifiche le fai nell'EventDispatcher, a seconda dei casi ti servono doLayout() e validate() e a volte aiuta usare EventQueue.invokeLater. Per casi estremi (elaborazioni lunghe che andrebbero fatte in un nuovo Thread o in un SwingWorker) puoi sempre usare paintImmediatly(getBounds()).

    Bye.

  4. #4
    ma setViewportView() non è un metodo di JScrollPane? E se io volessi utilizzare semplicemente un pannello (non per forza scrollabile) per il componente principale del contentPane?

    Non c'è una maniera più 'elegante' di repaint()?
    Digicasper ;-)

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    96
    un metodo che si prende in carico tutto il lavoro, cui semplicemente notificare che l'oggetto va ridisegnato, mi sembra piuttosto elegante. Cosa, esattamente, sarebbe più elegante di repaint? Vuoi fare double-buffering?

  6. #6
    Chiedo, scusa, mi sono espresso male.
    repaint() per quel che ne so io (e per come lo uso io, non sono un professionista), per fare in modo che 'faccia effetto' bisogna chiamarlo direttamente dal JFrame.
    E' possibile invece che l'urlo lo lanci un componente più interno, indipendentemente da cosa ha più su? Che sia un minimo riusabile, insomma.
    Magari la risposta è stupida, non conosco tutte le funzioni di awt/swing.
    Digicasper ;-)

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.