Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di grisson
    Registrato dal
    Jul 2006
    Messaggi
    166

    [delphi] aprire piu volte la stessa form

    come si fa ad aprire piu volte la stessa form?
    ad esempio, io ho un programma formato da form1(principale) e form2(secondaria e inizialmente invisibile).

    io vorrei fare in modo che all'accadere di un evento(ad esempio un clic su un bottone) venga visualizzata la form 2(e fin qui ok), ma vorrei fosse possibile fare in modo che all'accedere di un altro evento si apra un altra form2 e cosi via....
    come si può fare?

    grazie.

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Accertati che il Form in questione non appartenga all'elenco "Auto create" nelle opzioni del progetto e rimuovi la variabile che Delphi crea automaticamente nella unit in cui il Form è definito.

    Detto questo, è sufficiente sapere che prima di visualizzare un Form, questo va creato, e nel tuo caso dovrai farlo manualmente, usando ad esempio il metodo CreateForm di Application (unit Forms).

    codice:
    Application.CreateForm(TMyForm, MyFormVar);
    dove MyFormVar nell'esempio è una variabile locale in cui memorizzi il riferimento all'oggetto creato, che è una nuova istanza del Form, visualizzabile invocando il metodo Show.

    Se ripeti l'operazione di cui sopra, creerai di fatto altre istanze del medesimo Form, tutte separate.

    Dovrai poi provvedere all'occorrenza a distruggere la memoria allocata per ciascun singolo Form; questo puoi renderlo automatico con l'evento OnClose (approfondisci sulla Guida in linea).

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di grisson
    Registrato dal
    Jul 2006
    Messaggi
    166
    grazie mille


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.