我做了一个聊天窗口,当最小化时或是被其它窗口挡住时,来了消自己,自动跳至桌面的最前端来,怎么老是不能实现啊?
我的代码如下: IF IsIconic(FrmChat.Handle) then
Begin
SetWindowPos(FrmChat.Handle, HWND_TOPMOST, 0, 0, 0, 0,
SWP_NOMOVE or SWP_NOSIZE) ;
End
Else
Begin
SetWindowPos(FrmChat.Handle, HWND_NOTOPMOST, 0, 0, 0, 0,
SWP_NOMOVE or SWP_NOSIZE);
请指点一下,谢谢!
我的代码如下: IF IsIconic(FrmChat.Handle) then
Begin
SetWindowPos(FrmChat.Handle, HWND_TOPMOST, 0, 0, 0, 0,
SWP_NOMOVE or SWP_NOSIZE) ;
End
Else
Begin
SetWindowPos(FrmChat.Handle, HWND_NOTOPMOST, 0, 0, 0, 0,
SWP_NOMOVE or SWP_NOSIZE);
请指点一下,谢谢!
procedure TForm1.Button2Click(Sender: TObject);
var
vHwnd : hwnd;
begin
winexec('calc.exe',SW_SHOWNORMAL);
vHwnd := findwindow(nil,'calc.exe');
if vHwnd <> 0 then
SetForegroundWindow(vHwnd);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
vHwnd : hwnd;
begin vHwnd := findwindow(nil,'小算盤');
if vHwnd = 0 then winexec('calc.exe',SW_SHOWNORMAL);
if vHwnd <> 0 then
SetForegroundWindow(vHwnd);
end;
var
vHwnd : hwnd;
begin vHwnd := findwindow(nil,'小算盤');
if vHwnd = 0 then winexec('calc.exe',SW_SHOWNORMAL);
if vHwnd <> 0 then
begin
ShowWindow(vHwnd,SW_SHOWNORMAL);
SetForegroundWindow(vHwnd);
end;
end;