如何在Application最小化的情况下,在屏幕上显示一个窗口? 如题。要显示的窗口并非MDI子窗口。希望此窗口不受Application的最大最小状态影响,相对独立。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 通过winproc过滤消息即可这里要过滤的消息是wm_syscommand 我测了3个消息,wm_syscommand,wm_size,wm_showwindow,最后终于有点成果,总算第三次就找到了这个消息。 应用在最小化和恢复时给应用中的窗口发的消息不是wm_syscommand,也不是wm_size,而是wm_showwindow.他只是将窗口置为隐藏。这是我刚才测试的结果。我原来也以为拦截wm_syscommand消息就可以搞定,后来发现错了。 你用wndproc可以同时拦截所有的消息,需要重载。对于你这种情况,写个简单的消息处理过程就搞定了。下面是不希望最小化的form的代码unit Unit2;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm2 = class(TForm) private procedure WMshowwindow(var msg : TWMshowwindow);message wm_showwindow; { Private declarations } public { Public declarations } end;var Form2: TForm2;implementation{$R *.dfm}procedure Tform2.WMshowwindow(var msg : TWMshowwindow);begin if msg.Show = false then exit; inherited;end;end. delphi开发ocx控件问题 Delphi如何实现象QQ弹出 dataset的组件为何会有datasourse属性? 怎么判断一个数在数组内! 新手初问:在Delphi中怎样点击Button控件打开指定的Excel文件? type library的一个问题... DELPHI能否做到这样? 专门为了这个问题而注册了个帐号!大家帮我! Delphi使用什么写的? 两个程的绑定 怎么实现以下效果? 怎样在程序实现对“我的电脑”中的映射网络硬盘的更名和图标更改?(100分,在线等待)
应用在最小化和恢复时给应用中的窗口发的消息不是wm_syscommand,也不是wm_size,而是wm_showwindow.他只是将窗口置为隐藏。这是我刚才测试的结果。我原来也以为拦截wm_syscommand消息就可以搞定,后来发现错了。
你用wndproc可以同时拦截所有的消息,需要重载。对于你这种情况,写个简单的消息处理过程就搞定了。
下面是不希望最小化的form的代码
unit Unit2;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm2 = class(TForm)
private
procedure WMshowwindow(var msg : TWMshowwindow);message wm_showwindow;
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;implementation{$R *.dfm}
procedure Tform2.WMshowwindow(var msg : TWMshowwindow);
begin
if msg.Show = false then exit;
inherited;
end;end.