Toch nog een vraagje.
Eigenlijk wil ik de code niet in het FrmMain hebben maar in FrmTabsheet want anders krijg je wel heel veel code in je mainform.
Als ik nu een checkbox "ShowPanel" op FrmMain plaats en hij moet dan alle panels visible maken of juist niet.
Form welke geladen wordt in de pagecontrol:
Code:
type
TfrmTabsheet = class(TForm)
pnlFrmTabsheet: TPanel;
edtFrmTabsheet: TEdit;
private
{ Private declarations }
FShowPanel : boolean;
procedure SetShowPanel (aShow: boolean);
public
{ Public declarations }
property ShowPanel : boolean read FShowPanel write SetShowPanel;
end;
var
frmTabsheet: TfrmTabsheet;
implementation
{$R *.dfm}
{ TfrmTabsheet }
procedure TfrmTabsheet.SetShowPanel(aShow: boolean);
begin
pnlFrmTabsheet.Visible := aShow;
FShowPanel := pnlFrmTabsheet.Visible;
end;
Vanuit de mainform krijg ik nu een AV als ik probeer Showpanel aan te roepen.
Code:
procedure TfrmMain.cbShowPanelClick(Sender: TObject);
var
I : integer;
lTabsheet : TTabsheet;
begin
if PageControl.PageCount > 0 then
for I := 0 to PageControl.PageCount -1 do
begin
lTabsheet := PageControl.Pages[I];
TFrmTabsheet(lTabsheet).ShowPanel := cbShowPanel.Checked;
end;
end;
Bookmarks