![]() |
AW: TCollection = not TCollection ?
Delphi-Quellcode:
Und falls auch die Nachfahren der Kombonenten mit erwischt werden sollten, dann
for ICtrl := 0 to FParentObj.ComponentCount - 1 do
begin Ctrl := FParentObj.Components[ICtrl]; If (Ctrl = TComboBox) or (Ctrl = TComboBoxEx) or (Ctrl = TDBLookupCombo) or (Ctrl = TDriveComboBox) then begin CtrHwnd := FindWindowEx(FParentObj.Handle, 0, PChar(Ctrl.ClassName), nil); end;
Delphi-Quellcode:
statt
is
Delphi-Quellcode:
.
=
PS: Zitat:
oder FindWindowExW + PWideChar + WideString/UnicodeString PSS: ![]() |
AW: TCollection = not TCollection ?
Zitat:
Delphi-Quellcode:
.
Ctrl.Classtype=...
Delphi-Quellcode:
ist aber sauberer imo.
is
|
AW: TCollection = not TCollection ?
Zitat:
gruss |
AW: TCollection = not TCollection ?
Zitat:
Um was geht's ? Ich bekomme bei meiner abfrage das korrekte Handle. und das geht gar nicht.
Delphi-Quellcode:
Dann müßte ich nämlich die Controls bzw.. dazugehörige Units mit einbinden.
for ICtrl := 0 to FParentObj.ComponentCount - 1 do
begin Ctrl := FParentObj.Components[ICtrl]; If (Ctrl = TComboBox) or (Ctrl = TComboBoxEx) or (Ctrl = TDBLookupCombo) or (Ctrl = TDriveComboBox) then begin CtrHwnd := FindWindowEx(FParentObj.Handle, 0, PChar(Ctrl.ClassName), nil); end; Ich befinde mich in einer DLL und die Controls in der Anwendung. gruss |
AW: TCollection = not TCollection ?
Zitat:
Delphi-Quellcode:
uses
Generics.Collections; |
AW: TCollection = not TCollection ?
na gut hast mich überzeugt :)
gruss |
AW: TCollection = not TCollection ?
usp, ja
Delphi-Quellcode:
or
Ctrl.ClassType = TIrgendwas
Delphi-Quellcode:
PS: Nur weil Klassen den gleichen Namen haben, müssen sie nicht die selben Klassen-Deklarationen besitzen.
Ctrl is TIrgendwas
Geh mal raus und frage so lange, bis du einen "Frank" gefunden hast ... mit etwas Glück bin ich das. |
AW: TCollection = not TCollection ?
Zitat:
Ist bestimmt bekannter zumindest nicht 1 zu ner million bis ich dich finde. Komme auf keinen grünen zweig da ich nicht auf die Objekte der Form direkt zugreifen kann. gruss |
AW: TCollection = not TCollection ?
Es handelt sich doch um Komponenten einer Form der eigenen Anwendung?
Wenn ja, dann siehe PSS in #11. PS: Von Delphi automatisch erzeugt form haben immer Application als Owner, weswegen sie sich auch über Application.Components finden lassen. Alle anderen delphieigenen TopLevel-Forms sind nochmal über Screens.Forms aufzufinden. Ach ja, die Variante über den ClassType hat noch den vorteil der Quellcodevervollständigung, beim Schreiben der Namen und das Ganze wird dann auch nochmal über den Kompiler validiert, wärend man sich bei den Strings nur mal verschreiben braucht (sei es uch nur in der Groß-/Kleinschreibung) und schon wird der Vergleich schnell Mal was von FALSE behaupten. Abgesehn davon, daß ein Integervergleich ein klein bissl optimaler ist, als ein Stringvergleich. |
AW: TCollection = not TCollection ?
Zitat:
Die werden in einer DLL ausgewertet. Das bereitet probleme. Sagte ja schon ich sende SELF aber das was in Self(eigene Anwendung) steht kommt in der DLL nicht an. Dann wäre es alles kein problem. So wie hier von Luckie schon gesagt Zitat:
EDIT: Zitat:
gruss. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:59 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