创建Borland风格的漂浮式窗口(4)

2008-04-09 04:30:36来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

Windows在最大化窗口通过调用这个结构作为参数,来取代默认的最大化参数。

具体操作如下:

TfrmMain的定义部分添加私有成员定义:

private

procedure FormMaximum(var Msg:TMessage);Message WM_GETMINMAXINFO;

以定义WM_GETMINMAXINFO的消息处理句柄。

Implementation部分添加实现代码:

procedure TfrmMain.FormMaximum(var Msg:TMessage);

var

lpmmi:^tagMINMAXINFO;

begin

lpmmi:=Pointer(Msg.LParam); //获取指向tagMINMAXINFO的指针

lpmmi^.ptMaxSize:=Point(Screen.width,H); //设定窗口的长宽

lpmmi^.ptMaxPosition:=Point(0,0); //设定窗口左上角的位置

end;

有一点要注意:lpmmi^.ptMaxSize:=Point(Screen.width,H);一句不能写成lpmmi^.ptMaxSize:=Point(Screen.width,frmMain.Height); 这是由于TformVCL控件,在此消息处理句柄中不可以直接引用Tform中的成员。

到此,大功告成了!其他一些细节,如是否允许用户改变窗口大小,是否可以拖动窗口,都可以通过简单调节而实现,就全看你的需要了。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:使用Kylix必看:您为Kylix做好准备了么?-BY CKER

下一篇:装扮工具提示条