非应用程序主窗口显示在任务栏的问题
2010-03-05 16:59
405 查看
非应用程序主窗口显示在任务栏的问题
Delphi中,除了应用程序主窗口会显示在任务栏上,其它窗口默认都不会显示在任务栏.
没有MS开发环境中的ShowInTaskBar属性.
解决办法:
1.重载窗口 CreateParams 方法以实现,ShowInTaskBar效果
procedure CreateParams(var Params: TCreateParams);override;
procedure Tform1.CreateParams(var Params:TCreateParams);
begin
inherited CreateParams(Params);
Params.WndParent := GetDesktopWindow;
end;
能实现显示在任务栏,但是,会有个令人不快的麻烦,如果你在这个窗口上
启用 ShowHint 功能(类似ShowToolTip),并设置 相关控件的 Hint,则会在
显示此提示内容时, 窗口会自动失去焦点,置于主窗口之后,(像是被 SentToBack 了)
莫名其妙,花了我半个小时,将两个窗口对比,才发现是,重载窗口 CreateParams
造成的.这才想到用API来作,(不熟悉Delphi,也不知道还有什么方法)
2.使用API函数 SetWindowLong 实现;
SetWindowLong在delphi Windows 单元已经作了申明,可直接使用;
procedure Tform1.FormCreate(Sender: TObject);
begin
SetWindowLong(self.Handle, GWL_EXSTYLE, WS_EX_APPWINDOW);
end;
终于不再有 重载窗口 CreateParams 方法实现后的 ShowHint 问题.
Delphi中,除了应用程序主窗口会显示在任务栏上,其它窗口默认都不会显示在任务栏.
没有MS开发环境中的ShowInTaskBar属性.
解决办法:
1.重载窗口 CreateParams 方法以实现,ShowInTaskBar效果
procedure CreateParams(var Params: TCreateParams);override;
procedure Tform1.CreateParams(var Params:TCreateParams);
begin
inherited CreateParams(Params);
Params.WndParent := GetDesktopWindow;
end;
能实现显示在任务栏,但是,会有个令人不快的麻烦,如果你在这个窗口上
启用 ShowHint 功能(类似ShowToolTip),并设置 相关控件的 Hint,则会在
显示此提示内容时, 窗口会自动失去焦点,置于主窗口之后,(像是被 SentToBack 了)
莫名其妙,花了我半个小时,将两个窗口对比,才发现是,重载窗口 CreateParams
造成的.这才想到用API来作,(不熟悉Delphi,也不知道还有什么方法)
2.使用API函数 SetWindowLong 实现;
SetWindowLong在delphi Windows 单元已经作了申明,可直接使用;
procedure Tform1.FormCreate(Sender: TObject);
begin
SetWindowLong(self.Handle, GWL_EXSTYLE, WS_EX_APPWINDOW);
end;
终于不再有 重载窗口 CreateParams 方法实现后的 ShowHint 问题.
相关文章推荐
- PyQt之自定义无边框窗口遮盖任务栏显示问题
- Windows XP系统的任务栏不能显示窗口问题的解决办法
- 修复“任务栏不显示最小化窗口”问题的VBS脚本
- VC 常见问题百问~确定应用程序的路径~~如何在对话框中显示一个位图?~~窗口重绘
- Delphi中,除了应用程序主窗口会显示在任务栏上,其它窗口默认都不会显示在任务栏.
- PyQt自适应窗口任务栏显示问题
- C#中MessageBox.Show问题(让提示窗口不显示在任务栏中)
- word不能在任务栏显示所有窗口---问题处理
- 《转》PyQt之自定义无边框窗口遮盖任务栏显示问题
- 画面弹出以后,任务栏上名字显示问题
- 百度地图创建麻点及解决显示最同一个窗口信息问题
- 更改窗口图标并将其显示在任务栏
- CEGUI OGRE ISO中文显示输入整合,鼠标独占问题,窗口创建
- 解决windows7 启动MSN在任务栏显示两个图标的问题
- 窗口最小化后的在系统栏的显示问题
- 解决SublimeText输入法不跟随窗口、输入法显示不正常的问题
- 解决,windows的任务计划中添加一个批处理脚本,总是显示命令行窗口的问题
- windows/mfc实现窗口隐藏同时 在任务栏上无图标显示功能
- xshell 终端窗口目录显示为深蓝色的不易分辨问题
- 基于对话框的MFC程序中,实现非模态子窗口在任务栏显示图标以及窗口左上角加图标