Ik snap iets niet (komt vaker voor ) )
Ik koppel een form aan een tabsheet. Deze tabsheet wordt @runtime aangemaakt. Het form heeft als parent de tabsheet. Nu kan ik via een mousebutton de tabsheet weer verwijderen van de pagecontrol.
delphi Code:
procedure TODPageControl.MouseDown(Button: TMouseButton; Shift: TShiftState; X,
Y: Integer);
var r:TRect;
i, h2:integer;
begin
if Button=mbLeft then begin
i:=TabIndexAtClientPos(Point(X,Y));
r:=TabRect(i);
h2:=((r.Bottom-r.Top) div 3) shl 1;
if (X>r.Right-h2) and (Y<r.Top+h2) then
self.RemovePage(i);
end;
end;
Echter zie ik niet dat mijn form ook wordt vrijgegeven. In een Onclose procedure heb ik een showmessage geplaatst om te kijken of deze wel wordt aangeroepen. Blijkbaar niet. Ik zou verwachten dat een release van de tabsheet ook de form wordt vrijgegeven en dat dan altijd een Onclose procedure wordt uitgevoerd.
Is mijn veronderstelling wel juist. zo niet, hoe trigger ik anders die OnClose?
Bookmarks