窗体问题。。。 SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW); procedure TForm2.CreateParams(var Params: TCreateParams);begin inherited; Params.WndParent := 0;end;你试一试这个方法;这是在非主窗体中加的;就是你想显示在任务栏的窗体里加的;声明: procedure CreateParams(var Params: TCreateParams); override ; 我想像一般的windows窗口一样可以随时缩小或还原,所以是不是应该在最小化窗体时触发这个事件呢?那么最小化窗体的事件又是什么? 自己写一个消息函数,截取窗口的 WM_SYSCOMMAND 消息,判断是否 SC_MINIMIZE 记得过滤其他的消息和调它的处理函数 怎样截取窗口的 WM_SYSCOMMAND 消息呢?我应该在什么事件中向系统发送自定义的消息呢? Application.Minimize只能将窗口最小化于屏幕的左下角,而不是最小化于任务栏上 yes ,it is so easy. 这是什么啊,答的乱七八糟,看好人家问的是什么啊。如果你要在窗体最小化的时候有所动作,就要拦截系统消息;比如procedure WMSYSCOMMAND (var msg:TMESSAGE);message:WM_SYSCOMMAND ;...procedure TForm1.WMSYSCOMMAND (var msg:TMESSAGE);begininherited;if Message.CmdType and $FFF0 = SC_MINIMIZE then begin Application.Minimize; ... end; end;没有Delphi的IDE环境,应该不会有太大出入,请自行验证。网上有许多搜索引擎的,自己搜一下,会有更大收获的。 抱歉,真的有错误了。if Message.CmdType and $FFF0 = SC_MINIMIZE then 应该改为if msg.CmdType and $FFF0 = SC_MINIMIZE then WWDBGRID调整列宽时,数据消失的问题。 怎么将事件和函数定义成变量 各位大侠,我有 一个小小的问题要解决,快请帮帮!!!! 在form里定义的类型,到别的form里无法调用的问题 64位操作系统? 初学者提问:如何隐藏或者显示指定程序? 很久没来delphi了! 三个不难的问题,进来解答一下吧。 怎麼樣把midas的socketConnection控件寫在一個dll裡面? Delphi中报错project index.EXE raised exception class emcideviceerro with message 帮我看看程序,那里出错? 关于多线程间的数据锁定和访问
begin
inherited;
Params.WndParent := 0;
end;
你试一试这个方法;
这是在非主窗体中加的;就是你想显示在任务栏的窗体里加的;声明:
procedure CreateParams(var Params: TCreateParams); override ;
只能将窗口最小化于屏幕的左下角,而不是最小化于任务栏上
如果你要在窗体最小化的时候有所动作,就要拦截系统消息;
比如
procedure WMSYSCOMMAND (var msg:TMESSAGE);message:WM_SYSCOMMAND ;
...
procedure TForm1.WMSYSCOMMAND (var msg:TMESSAGE);
begin
inherited;
if Message.CmdType and $FFF0 = SC_MINIMIZE then
begin
Application.Minimize;
...
end;
end;
没有Delphi的IDE环境,应该不会有太大出入,请自行验证。
网上有许多搜索引擎的,自己搜一下,会有更大收获的。
if Message.CmdType and $FFF0 = SC_MINIMIZE then
应该改为
if msg.CmdType and $FFF0 = SC_MINIMIZE then