Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TPopup an zwei TCheckListBox gebunden (https://www.delphipraxis.net/32151-tpopup-zwei-tchecklistbox-gebunden.html)

easywk 19. Okt 2004 15:42


TPopup an zwei TCheckListBox gebunden
 
Moin, moin,

ich habe ein Popup-Menu, welches an zwei verschiedene TCheckListBox gebunden ist - sprich beide rufen das gleiche Popup auf. Einer der Menüpunkte soll alle Items in TCheckListBox auf Checked=TRUE setzen. Dazu habe ich folgende Routine in das entsprechende OnClick-Event des Menüs geschrieben:
Delphi-Quellcode:
  for cnt:=0 to TCheckListBox(TPopupMenu(TMenuItem(Sender).Parent).PopupComponent).Items.Count-1 do
    TCheckListBox(TPopupMenu(TMenuItem(Sender).Parent).PopupComponent).Checked[cnt]:=TRUE;
IMHO müsste das eigentlich gehen. Geht aber nicht :wall:
Bin ich jetzt nur zu blind?

Thanx for help
easywk

s14 19. Okt 2004 16:19

Re: TPopup an zwei TCheckListBox gebunden
 
Hallo,
also ich hab's mal experimentell so gelöst:

Delphi-Quellcode:
var
  obj : TObject;
  cnt: Integer;
begin
 obj := (Sender as TMenuItem).GetParentComponent;
 obj := (obj as TPopupMenu).PopupComponent;
 with (obj as TCheckListBox) do
   for cnt := 0 to Items.Count-1 do Checked[cnt] := True;

end;
Es sollte aber schon noch geprüft werden ob es überhaupt eine TCheckListBox ist!!

Gruß
s14

easywk 19. Okt 2004 16:31

Re: TPopup an zwei TCheckListBox gebunden
 
:wall: :wall: :wall: jetzt ist auch mein Fehler klar! statt
Delphi-Quellcode:
TMenuItem(Sender).Parent
muss es natürlich heissen:
Delphi-Quellcode:
TMenuItem(Sender).GetParentComponent
Sogesehen hat mir dein "Experiment" sehr weitergeholfen, auch wenn ich es jetzt nicht direkt benutze :-)

Thanx
easywk


Alle Zeitangaben in WEZ +1. Es ist jetzt 06: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