我遇到这种情况(参见图片),现在当我在运行时将Splitter1
向上移动时,Panel2
高度会增加,而且Form1
高度也会增加。
但是我需要知道并阻止这种类型的事件,当由于到达Splitter1
而无法将Panel1.Constraints.MinHeight
向上移动时,因此Panel2
的高度和Form1
也无法更改。
谢谢你的帮助。
-编辑-Panel1.Align
:= alLeft;Splitter1.Align
:= alBottom;Panel2.Align
:= alBottom;
最佳答案
您可以在拆分器的CanResize
事件中检查并拒绝进一步调整大小。
procedure TForm1.Splitter1CanResize(Sender: TObject; var NewSize: Integer;
var Accept: Boolean);
begin
Accept := ClientHeight - (NewSize + Splitter1.Height) >= Panel1.Constraints.MinHeight;
end;