![]() |
Panels einfärben (über das gleiche Popupmenü)
Hallo,
ich möchte gerne verschiedene Panels über ein PopUp-Menü einfärben. Also das PopUp-Menü hat z.B. die Menüpunkte "Rot" und "Grün". Muss ich dort mit Sender arbeiten? Ich habe mich erst jetzt mit diesem Punkt beschäftigt, komme aber nicht so richtig weiter. Ich hoffe mein Ansatz ist wenigstens richtig. Bisher habe ich es so versucht:
Delphi-Quellcode:
Das funktioniert aber nicht, es gibt eine Access Violation.
// PopupMenüpunkt "Rot"
TPanel(Sender).Color := clRed; // so habe ich es auch versucht (Sender as TPanel).Color := clRed; Stelle ich mir das zu einfach vor? :gruebel: |
Re: Panels einfärben (über das gleiche Popupmenü)
Der Sender ist ja das MenuItem ;) . Du kannst das aber so machen: allen Panels das PopupMenü zuweisen. Im OnClick der Menüpunkte kommst Du dann über PopupComponent an das auslösende Panel.
|
Re: Panels einfärben (über das gleiche Popupmenü)
Zitat:
Ich weiß nicht recht wie ich PopUpComponent benutzen soll. |
Re: Panels einfärben (über das gleiche Popupmenü)
Delphi-Quellcode:
Wie gesagt, im OI den Panels das Popupmenü zuweisen. Zur Not stell ich ein Beispielprog online ;)
procedure TForm1.Rot1Click(Sender: TObject);
begin if PopupMenu1.PopupComponent is TPanel then //sicherheitshalber TPanel(PopupMenu1.PopupComponent).Color := clRed; end; |
Re: Panels einfärben (über das gleiche Popupmenü)
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:10 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