form如果没有设成主窗体,那么在最小化时会缩在桌面的左下角.
有没有办法让它停在任务栏上.
有没有办法让它停在任务栏上.
解决方案 »
- 如何编程在本机开启一个代理服务器,给自己的朋友使用
- delphi 怎么响应f1,f3,f7...这些快捷键啊??
- 有关TDBGride的DataSource属性
- [讨论]当初老板许诺给你的奖金兑现了吗?
- 奇怪的问题 DBGRID相关
- 谈谈个人的将来计划和理想,来者有分,可以再添分!
- 小弟我现在第一次做串口通信,请问大家一般做通信编程需要用到哪些组件
- 关于listbox中得到行号的问题!
- 高分求解!!!保存出错!!
- delphi+sqlserver delphi如何写代码实现重建索引?最好有代码?谢谢!
- 关于IntraWeb的简单问题!
- 请问:如何比较两个数组是否相同,如何将一个数组复制给另一个数组
ShellAPI, Windows, Forms, SysUtils, Messages; const
WM_TrayMessage = WM_USER+1;
TrayID: Integer = 1;
IconName: array[False..True] of string= ('TRAY_CLOSED', 'TRAY_OPEN');
Hint: array[False..True] of string= ('StarCraft Battle Batman(Disabled)', 'StarCraft Battle Batman'); var
MyTray: TNotifyIconData; //Tray变量
IsEnabled: Boolean = True; //初始化Tray
procedure InitTray (Handle: HWND);
//改变Tray的标题
procedure ChangeTray;
//删除Tray
procedure DelTray; implementation {$R Tray.res} procedure InitTray (Handle: HWND);
var
S: string;
I: Integer;
begin
MyTray.cbSize := SizeOf(MyTray);
MyTray.Wnd := Handle;
MyTray.uFlags := NIF_ICON Or NIF_MESSAGE Or NIF_TIP;
MyTray.uID := TrayID;
MyTray.hIcon := LoadIcon(HInstance, PChar(IconName[IsEnabled]));
S:= Hint[IsEnabled];
FillChar (MyTray.szTip, SizeOf(MyTray.szTip), 0);
for I:=1 to Length(S) do MyTray.szTip[I-1]:= S[I];
MyTray.uCallbackMessage := WM_TrayMessage;
Shell_NotifyIcon (NIM_ADD, @MyTray);
end; procedure ChangeTray;
var
S: string;
I: Integer;
begin
MyTray.hIcon := LoadIcon(HInstance, PChar(IconName[IsEnabled]));
S:= Hint[IsEnabled];
FillChar (MyTray.szTip, SizeOf(MyTray.szTip), 0);
for I:=1 to Length(S) do MyTray.szTip[I-1]:= S[I];
Shell_NotifyIcon (NIM_MODIFY, @MyTray);
end; procedure DelTray;
begin
MyTray.uFlags := 0;
Shell_NotifyIcon (NIM_DELETE, @MyTray);
end; end. 启动程序的时候用InitTray(Handle),关闭程序之前用DelTray,改变图表的时候用ChangeTray。最小化的时候把Main Form的visible改称false就行了。