本文整理自网络,侵删。
Delphi 操作“任务栏”
一、windows任务栏常规
1、通常编译好的文件,执行后在任务栏中,只显示一个主窗口的“标题框(带图标)”。不管你进入那一个子窗口,只显示主窗口的“标题框”
2、程序通过进入托盘,只一托盘区显示一个图标,任务栏中,就隐藏了。
3、如果想一开始就取消任务栏主窗口的“标题框” ,e 可在窗口的Creat事件中,加入代码:
(1)Delphi7
SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW); //隐藏
// SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_APPWINDOW); //显示
或
SetWindowLong(Self.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
SetWindowLong(self.Handle,GWL_EXSTYLE,WS_EX_APPWINDOW);
(2)在程序的.dpr文件中create窗体前加入:
Application.ShowMainForm:=false; // 隐藏窗口
// Application.ShowMainForm:=true; // 显示窗口
(3)修改工程文件DPR中的“Application.MainFormOnTaskbar := True;”为“Application.MainFormOnTaskbar := False;”
在主窗体的 OnShow 事件中写下:ShowWindow(Application.Handle, SW_HIDE);
二、Windows任务栏的操作
1、隐藏Windows任务栏
procedure Tform1.Button1Click(Sender: TObject);
var wndHandle: THandle; //用于存储指定窗口的句柄
wndClass: array[0..50] of Char; //用于存储类名
begin
strPCopy(@wndClass[0], 'Shell_TrayWnd'); //获取任务栏类名
wndHandle := FindWindow(@wndClass[0],nil); //获取任务栏窗口的句柄
ShowWindow(wndHandle, SW_Hide); //隐藏Windows任务栏
end;
2、隐藏Windows任务栏
procedure Tform1.Button2Click(Sender: TObject);
var wndHandle: THandle; //用于存储指定窗口的句柄
wndClass: array[0..50] of Char; //用于存储类名
begin
strPCopy(@wndClass[0], 'Shell_TrayWnd'); //获取任务栏类名
wndHandle := FindWindow(@wndClass[0],nil); //获取任务栏窗口的句柄
ShowWindow(wndHandle, SW_Show); //显示Windows任务栏
end;
相关阅读 >>
Delphi 生成xml 方法 与 Delphi txt文件操作
ttreeview的两个事件ondragdrop、ondragover 实现自动拖放功能
incsecond:将一个tdatetime变量加减一定数量的秒数
Delphi 用cxgrid把数据导出到excel时乱码的解决办法
更多相关阅读请进入《Delphi》频道 >>