![]() |
Mehrere Listboxen
Ich erstelle eine Listbox und übergebe die Eigenschaften der erstellten Listbox einem Record.
Delphi-Quellcode:
Solange ich nur eine Box erstelle ist das kein Problem.
PLB_TYPE = ^TLB_TYPE;
TLB_TYPE = record AktForecolor : COLORREF; InAktForecolor : COLORREF; Backcolor : COLORREF; Shadow : Boolean; ShadowColor : COLORREF; ShadowOffset : Integer; ForeColorSelected : COLORREF; BackColorSelected : COLORREF; PointSize : Integer; DrawStyle : Integer; BorderStyle : Integer; Icon : string; ItemHeight : Integer; Handle : HWND; Left : Integer; Top : Integer; Width : Integer; Height : Integer; Font : HFONT; end; Bei mehreren Boxen heben sich die Eigenschaften auf bzw ist nur noch die gültig von der zuletzt erstellten Box. Bsp. Handle.. Ich kann zwar das korrekte Handle der ListBox in erfahrung bringen in dem ich einfach die LISTBOX_ID über
Delphi-Quellcode:
abfrage aber dann fehlen mir immer noch die anderen Eigenschaften die vorher zugewiesen wurden.
GetDlgItem(ParentWindow, LISTBOX_ID)
Theoretisch könnte ich die zweite ja mit anderen Schriftfarben festlegen. Wie kann ich das am dümmsten Bereinigen ? gruss |
AW: Mehrere Listboxen
Delphi-Quellcode:
Oder was meinst du??
var
lstbox1: TLB_TYPE; lstbox2: TLB_TYPE; |
AW: Mehrere Listboxen
Zitat:
Und zwar alle die oben im record stehen. Ich habe den jetzt als Array ausgelegt aber auch das gibt mir nicht das richtige Handle zurück. Ich denke ich muss die propertys der Listbox irgendwo zwischenspeichern Hab nur noch keine Idee wo. Und wie ich sie zurückholen kann mit einer einfachen anfrage wie InstrumentList.handle. gruss |
AW: Mehrere Listboxen
Das versteh ich jetzt nicht, du speicherst doch die einstellungen in einem Record, wo willst du die denn noch zwischen speichern?
Wenn du für Jede Listbox eine Variable vom Typ deines Records deklarierst, und dann auch in der richtigen Variable speicherst, dann ist das doch solange da drinn bis du es löscht oder das Proggy beendest. |
AW: Mehrere Listboxen
Zitat:
Sage es nochmal ich erstelle eine Listbox. Wenn diese erstellt wird erhalte ich das korrekt Handle zurück. Erstelle ich noch eine Dann hat die vorher erstellte ListBox plötzlich das Handle der zuletzt erstellten. Bis hierher verstehst du was ich meine? OK! Rufe ich jetzt irgendwo im quelltext nach dem erstellen aller ListBoxen mein Instrument.Handle ab dann hat diese das Handle der zuletzt erzeugten ListBox. Deshalb muss ich alle Propertys zwichenspeichern mir fällt aber nicht ein wie oder wo am besten. Array Funktioniert nicht hab ich schon versucht. Eine VCL Listbox speichert doch auch irgendwo seine Propertys ab oder nicht ? Und das will ich in nonvcl erreichen. gruss |
AW: Mehrere Listboxen
Mir kommt vor, dass Du da irgendwie eine verkettete Liste erstellen willst ? Guck dir mal TObjectkist an und packe den ganzen Krempel da rein. Ohne Gewähr !
Edit : ich ziele darauf ab, dass in die TOjectlist komplette Listboxen kommen ! Warum muss denn das nonVCL sein ? Welchen Vorteil soll das bringen ? :shock: |
AW: Mehrere Listboxen
Zitat:
vor allem bei der grafischen Gestaltung bei einer VCL ListBox bis du auf das angewiesen was sie dir zur verfügung stellt. Es sei denn du verbiegst diese was ich wiederum als unschön finde. Und warum soll ich mir eine Komponente kaufen die das zur verfügung stellt was ich brauche wenn ich es mit einigen Aufwand und zeit selber erstellen kann. Gut es gibt dafür andere Probleme wie man sieht. TObjectkist muss ich mir anschauen in wie weit das kompatibel zu IInterface ist. Und in nonvcl verwenden kann. gruss |
AW: Mehrere Listboxen
Zitat:
|
AW: Mehrere Listboxen
Nur zum Verständnis: es gibt mehrere Listboxen, aber nur einen Record? Dann ist das ja klar, dass dieser nur die Daten der zuletzt erstellten Listbox enthält, da die Daten ja ständig überschrieben werden. Eine Liste tut hier Not (ob als dynamisches Array, verkettete Liste oder TList, das spielt keine Rolle).
|
AW: Mehrere Listboxen
Zitat:
Bau dir also eine Klasse (TEWListBox) und Tüte mit dieser Klasse alles ab. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:20 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