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

    stesso metodo, 2 comportamenti

    Spiego tutto senza riportare il codice, perché sarebbe troppo lungo.
    Utilizzando la libreria swing, ho creato il metodo aggiornaFrame() per aggiornare il contenuto di un frame ogni qual volta io ne abbia bisogno.
    Se richiamo questo metodo con un evento (nello specifico, la pressione di un tasto) funziona perfettamente, le informazioni vengono aggiornate correttamente.
    Diversamente da ciò, se lo stesso metodo viene richiamato da un altro metodo (anche il main), il comportamento è leggermente diverso; prima vengono cancellati tutte le informazioni e poi vengono riscritte, provocando un fastidiosissimo lampeggiamento dello schermo.
    E la stessa cosa succede richiamandomi il metodo dell'evento (keyPressed())
    Se è necessario allego il codice, qualcuno sa il perché di questa stranezza? O conosce una soluzione?

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: stesso metodo, 2 comportamenti

    Originariamente inviato da crissstian96
    Se è necessario allego il codice, qualcuno sa il perché di questa stranezza? O conosce una soluzione?
    Non abbiamo ancora la sfera di cristallo
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157

    Re: Re: stesso metodo, 2 comportamenti

    Originariamente inviato da Alex'87
    Non abbiamo ancora la sfera di cristallo
    oltre a straquotare Alex, ad occhi chiusi ti posso invitare a controllare (tramite debug magari) lo stato del metodo quando lo chiami nei due casi. Se ci sono variabili di istanza il cui valore dipende dal contesto (es. quando chiami dalla classe hai uno stato, che non è lo stesso quando chiami da una classe esterna), sono inizializzate ad esempio da un costruttore e non da un'altro, o cambiate durante il flusso di esecuzione in un caso e non nell'altro...bene queste differenze potrebbero portarti comportamenti differenti.
    Ovviamente una eventualità di questo tipo è sintomo di qualche problema a livello progettuale, visto che per un metodo a parità di input bisogna sempre avere parità di output.
    RTFM Read That F*** Manual!!!

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.