Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di poyel
    Registrato dal
    Oct 2010
    Messaggi
    51

    [DELPHI] eliminare oggetti creati in runtime

    Ciao, domanda: qualcuno sa come eliminare definitivamente un oggetto o un gruppo di oggetti da un form?

    Problema: Ho creato una classe frame dove sono contenuti sei controlli. In un altro form ho una serie di checkbox, sputando una qualunque di queste creo un riferimento al frame e lo visualizzo. Spuntando una seconda checkbox creo un altro riferimento ad un secondo frame e lo visualizzo, ecc.., in parole povere creo tante istanze del frame ognuno con un puntatore diverso. Tutta la lista di questi puntatori è in un oggetto di tipo TList (così posso accedere in maniera sequenziale a tutti i puntatori creati senza controllare quali sono creati e quali no). Fin qui tutto ok. Ma se voglio eliminare il segno di spunta da una checkbox deve "sparire" eliminando pure il riferimento frame che ho creato spuntandola. Qualcuno sa come fare?

    la classe frame si chiama TfrmValore;

    nell'evento onClick di una qualsiasi checkbox ho inserito questo codice
    codice:
    procedure TfrmAvanzate.CheckBox1Click(Sender: TObject);
    var obj:TfrmValore;
    begin
      { Crea gli oggetti utili per specificare i valori }
      if CheckBox1.Checked then
      begin
          obj := TfrmValore.Create(Self);
          obj.Parent := pnlValori;
          obj.Align := alTop;
          FrameList.Add(frmMinsan);
        end
        else
        begin
          FrameList.Remove(obj);
        end;
    end;
    FrameList è un oggetto di tipo TList.

    In definitiva quello che voglio fare è spuntando il controllo crea e visualizza il frame, eliminando il segno di spunta nascondere e eliminare il frame.
    Il programmatore è colui che converte
    la caffeina in codice.

  2. #2
    E' molto semplice, scorri la lista fintantoché raggiungi il form da cancellare e lo cancelli. Poi rimuoverai il record che si è liberato nella TList.

  3. #3
    Utente di HTML.it L'avatar di poyel
    Registrato dal
    Oct 2010
    Messaggi
    51
    Effettivamente non ci avevo pensato...mi sapresti dire come posso scorrere fino a trovare il puntatore che mi interessa?
    Il programmatore è colui che converte
    la caffeina in codice.

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.