AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Controls wärend der Laufzeit ENTFERNEN.

Ein Thema von tomate007 · begonnen am 12. Nov 2007 · letzter Beitrag vom 12. Nov 2007
 
tomate007

Registriert seit: 1. Apr 2007
46 Beiträge
 
#7

Re: Controls wärend der Laufzeit ENTFERNEN.

  Alt 12. Nov 2007, 12:21
Also die müssen meiner Meinung nach neu erzeugt werden da die Situation so aussieht:

Alle Felder und Labels werden dynamisch aus einer CSV erzeugt.
Diese CSV wird durch ein anderes Programm wärend der Laufzeit geändert.
d.h. der Inhalt aus der ersten Zelle der CSV wird in Edit1 geschrieben und die überschrift dazu in Label1.
dies kann aber sich alles wärend der Laufzeit ändern, sodass ich wenn der User auf Aktuallisieren klickt nicht weiß ob die Caption von Label 1 immernoch die Überschrift der Spalte 1 ist und ich weiß auch nicht ob der Inhalt von Edit1 immernoch der gleiche Inhalt ist wie Zelle 1 der CSV.

Desweiteren weiß ich vorher nicht ob die CSV nicht vllt nach dem Aktuallisieren Leer ist, oder ob da noch Spalten zugekommen ist.

Da ich soviele Sachen nicht weiß, dachte ich mir das ein destroy und nachher wieder erzeugen besser wäre als tausende von Prüfungen und anschließend die dazugekommenden zu erzeugen.

Bin natürlich offen für alle Ideen, also wenn einer was besseres weiß als .free und dann wieder erzeugen immer her damit.

Dazu kommt noch das .free sehr sehr langsam ist. Also das .free mach ich gerade so:
Delphi-Quellcode:
     if pruefung = true then begin
     for i:= 1 to AnzahlSpalten-1 do begin
     TEdit(Scrollbox1.FindComponent('Edit'+ IntToStr(i))).Free;
     TLabel(Scrollbox1.FindComponent('Label'+ IntToStr(i))).Free;
     end;
     end;
dabei ist pruefung eine variable des typ boolean welche auf true gesetzt wird wenn 1mal felder erzeugt wurden.
AnzahlSpalten ist die Anzahl der Spalten der CSV wovon ich vorher (bevor die CSV durch ein anderes Programm verändert worden ist) die Objects erzeugt habe. Mit AnzahlSpalten weiß ich also wieviele Objects ich zu löschen habe.

mit FindComponents suche ich mir die dann raus da ich ja die Objects nicht mit Edit[i] oder Label[i] ansprechen kann oder??

nun klappt alles, aber ich habe bei der .free Methode eine CPU-Auslastung von 100 % also geht alles zu langsam. Gibt es eine bessere Möglichkeit???

So .... nun seit ihr wieder gefragt ^^

Danke schonmal

MFG
Andre
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz