AW: Panel mit Label dynamisch erzeugen
@ DeddyH nur Color setzten hat geholfen und dafür brauchte ich auch...
@ Hawkeye ... nicht ParentBackground auf false setzten... Trotzdem vielen Dank an euch beide :D |
AW: Panel mit Label dynamisch erzeugen
nun war es in dieser Frage ja seit einiger Zeit wieder ruhig... jetzt hab ich aber mal wieder ein Frage.
Wie ich (glaube bzw. hoffe ich ;)) schonmal erwähnte, schreibe ich gerade an einem Kontoprogramm. Dabei sollen nun mehrer Konten möglich sein. Dafür möchte ich eine Art Tableiste am oberen Rand anbringen, mit der man dann das Konto auswählen kann. Allerdings hat Delphi soooo eine große Auswahl und ich so wenig Ahnung von Tableisten, dass ich mal einen Rat brauche, welche ich am besten nehmen sollte und wie ich die jetzt am Besten nachträglich in das Projekt einbinde, denn das Anzeigen eines Kontos steht schon... jetzt soll halt nur noch ausgewählt werden, welche Information da angezeigt werden, und dass mittels der Tableiste. Hoffe ihr versteht mein Problem, freue mich schon auf die vielen hilfreichen Antworten! hans ditter |
AW: Panel mit Label dynamisch erzeugen
Kannst Du den Begriff "Tableiste" ein wenig präzisieren? Meinst Du ein Control mit mehreren Reitern? Dann schau Dir doch einmal TPageControl näher an.
|
AW: Panel mit Label dynamisch erzeugen
ja, genau, sowas in der Art suche ich, allerdings muss ich das in ein fertiges Projekt einfach einfügen können. Kann ich da die Komponenten dann einfach raufkopieren oder wie sähe das dann aus?
Vor allem hab ich die Befürchtung, dass dann diese Panels, die während der Laufezeit createt werden, nicht mehr dahin kommen, wo sie hinsollen. Ich vermute, dass ich da dann den Code umschreiben muss... und, naja, das wollte ich wenn möglich verhindern. |
AW: Panel mit Label dynamisch erzeugen
IIRC liegen die Komponenten ja bereits auf einem Panel. Dieses Panel musst Du dann einfach auf das TabSheet setzen (Parent-Eigenschaft). Allerdings würde ich Dir dringend empfehlen, bei soviel dynamisch erzeugten Controls FastMM einzuschalten, da man gerne einmal einen Fehler bei der Freigabe von Ressourcen macht (aus eigener Erfahrung).
|
AW: Panel mit Label dynamisch erzeugen
bezüglich Speicherleck und dynamisch erzeugten Komponenten:
http://www.delphipraxis.net/153654-s...ml#post1041239 FastMM muß sowas nicht unbedingt mitbekommen. |
AW: Panel mit Label dynamisch erzeugen
Aber schaden kann es trotzdem nicht, oder?
|
AW: Panel mit Label dynamisch erzeugen
Zitat:
|
AW: Panel mit Label dynamisch erzeugen
Wenn ich Millionen Instanzen einer Klasse erzeuge und mir damit den Speicher vollhaue, kann FastMM auch nichts mehr machen, klar. Aber wenn ich mir z.B. eine Listenklasse definiere, die Objekte verwaltet, die wiederum selbst Unterobjekte erzeugen, bin ich froh, wenn FastMM mir meldet, ob der ganze Kladderadatsch auch wieder sauber entsorgt wird bzw. in welchen Fällen eben nicht. Darauf wollte ich eigentlich hinaus.
|
AW: Panel mit Label dynamisch erzeugen
Es müssen keine Millionen sein.
Probier es einfach mal aus ... egal welchen Button du drückst und danach die (Haupt)Form schließt, die 100 Forms der Schleife werden niemals gemeldet.
Delphi-Quellcode:
procedure TForm5.Button1Click(Sender: TObject);
var i: Integer; begin System.ReportMemoryLeaksOnShutdown := True; for i := 1 to 100 do TForm5.Create(Self); end; procedure TForm5.Button2Click(Sender: TObject); var i: Integer; begin System.ReportMemoryLeaksOnShutdown := True; for i := 1 to 100 do TForm5.Create(Self); TForm5.Create(nil); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz