不在 Taskbar 上的 APP 可否最小化? |
答題得分者是:flyup
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
小弟以如下的方式讓 App 不出現在 Taskbar 上:
var ExtendedStyle: integer; begin Application.Initialize; ExtendedStyle := GetWindowLong(Application.Handle, GWL_EXSTYLE); SetWindowLong(Application.Handle, GWL_EXSTYLE, ExtendedStyle or WS_EX_ToolWindow and not WS_EX_APPWINDOW); Application.CreateForm(TfmMain, fmMain); Application.Run; end.另外, Main Form 的 BorderStyle 屬性設為 bsNone FormStyle 屬性設為 fsStayOnTop 現在小弟的問題是當使用者按下 Win M 鍵時 所以視窗皆會最小化, 但這支 App 則否。 請教大家, 在這樣的條件或設定下 還有辦法在使用者按下 Win M 鍵時, 此 App 最小化 當有其它某個 App 不是最小化時, 此 App 也會顯示 Main From 的畫面? 謝謝大家! |
flyup
資深會員 發表:280 回覆:508 積分:385 註冊:2002-04-15 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
flyup
資深會員 發表:280 回覆:508 積分:385 註冊:2002-04-15 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
flyup
資深會員 發表:280 回覆:508 積分:385 註冊:2002-04-15 發送簡訊給我 |
unit Unit1; interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls; type
TForm1 = class(TForm)
procedure OnTop(SendeR: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form1: TForm1; implementation {$R *.DFM}
//顯示表單為最上層,另一種方式
procedure TForm1.OnTop(SendeR: TObject);
begin
SetWindowPos(form1.handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOACTIVATE or SWP_NOSIZE or SWP_NOSENDCHANGING);
end; procedure TForm1.FormCreate(Sender: TObject);
begin
OnTop(Self); <--表單蓋過工作列,依需要加入
Application.OnDeactivate := OnTop;
end; end. ps. or SWP_NOSENDCHANGING 可有可無,若在XP下無法執行,可以省略! 問題..希望不是最後才發生!建議一次問完! 發表人 - flyup 於 2003/02/24 22:40:21
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |