![]() |
Aus TComboBox.OnChange auf Sender zurückgreifen
Hallo,
ich habe eine zur Laufzeit erzeugte TComboBox, der ich für das OnChange-Event eine Routine zugewiesen habe. Ich würde gerne aus dieser Routine einen errechneten Wert oder eine Meldung wieder in die property Text der ComboBox zurückschreiben. Wie geht das? Danke, Messie |
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
Delphi-Quellcode:
PS: eventuell bewirkt das Ändern von .Text ein neues OnChange-Event. =>Teufelskreis
var
cbox : TComboBox; begin cbox := Sender As TComboBox; cbox.Text := '***'+cbox.Text+'==='; end; dann:
Delphi-Quellcode:
var
cbox : TComboBox; oldevent : TNotifyEvent; begin cbox := Sender As TComboBox; oldevent := cbox.OnChange; cbox.OnChange := nil; cbox.Text := '***'+cbox.Text+'==='; cbox.OnChange := oldevent; end; |
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
Danke für den Tipp,
Ich versuche gerade auch, das im BCB umzusetzen, das klappt aber nicht. Ich habe versucht:
Code:
Da wird vom Compiler bemeckert, daß ich die ComboBox mit new erzeugen soll. Muß ich ja nicht, die ComboBox gibt's ja schon.
TComboBox CBox;
CBox = (TComboBox)(Sender); Wir übergebe ich die Adresse des Sender an CBox? Grüße, Messie |
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
die Variable CBox soll nur ein Zeiger auf das Objekt sein:
Code:
TComboBox *CBox;
CBox = (TComboBox)(Sender); CBox->Text = "test"; |
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
Hatte ich vorher pobiert, geht auch nicht. Der Compiler will immer eine new-Anweisung, weil TComboBox eine VCL-Klasse ist. Muß irgendwie anders gehen...
Grüße, Messie |
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
da wäre ich über Hilfe richtig glücklich!
|
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
Code:
TComboBox *CBox;
CBox = (TComboBox*)(Sender); CBox->Text = "test"; |
Re: Aus TComboBox.OnChange auf Sender zurückgreifen
Danke für den Tip, der Zugriff geht jetzt. Leider kann ich immer noch nichts ans Textfeld übergeben. Die Eigenschaft Text wird gesetzt, trotzdem wird weiter das ausgewählte Item angezeigt.
Kann ich die Textanzeige aktivieren ohne daß ich den ItemIndex ändere? Grüße, Messie |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:03 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 by Thomas Breitkreuz