MainForm 最大化,底端要在工作列之上 |
尚未結案
|
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
|
supman
尊榮會員 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
|
vincent1974
一般會員 發表:2 回覆:2 積分:0 註冊:2004-10-29 發送簡訊給我 |
|
jest0024
高階會員 發表:11 回覆:310 積分:224 註冊:2002-11-24 發送簡訊給我 |
|
bestlong
站務副站長 發表:126 回覆:734 積分:512 註冊:2002-10-19 發送簡訊給我 |
引言: 如果 Form.Position = poScreenCenter 時, 以程式碼變更 Form.WindowState := wsMaximized 則 Form 雖然最大化了, 可是卻會上下各留一點點的空白(剛好就是工具列的一半) 因此,如果要把 Form 最大化, 建議先把 Position 設定為 poDefault。 這樣就會「切齊」工具列了這個現象目前會在 XP 華麗的介面下, 當 MDIMainForm.WindowState := wsMaximized 並且 MDIMainForm.Position := poScreenCenter 或是 poDesktopCenter 的狀態下就會發生, 不過調整成其他選項就不會了. 目前有用過 D5 D6 都如此. 雪龍 http://bestlong.no-ip.com/ 學海無涯覺無盡,勤做筆記防失憶
------
http://blog.bestlong.idv.tw/ http://www.bestlong.idv.tw/ http://delphi-ktop.bestlong.idv.tw/ |
zombit
初階會員 發表:63 回覆:39 積分:30 註冊:2004-05-11 發送簡訊給我 |
|
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
|
bestlong
站務副站長 發表:126 回覆:734 積分:512 註冊:2002-10-19 發送簡訊給我 |
就我的經驗, 只有在 XP 的視窗環境下(目前還沒機會測試 Window 2003), Form 的屬性在設計時期設定了下列範圍: BorderStyle := bsNone 或 bsSizeable
FormStyle := fsNormal 或 fsMDIForm 或 fsStayOnTop
Position := poDesktopCenter 或 poScreenCenter
WindowState := wsMaximized 當視窗最大化的位置就會有誤判的問題. 所以建議改變 Position 是目前繞過問題的方法. 不過當 WindowState 預設為 wsNormal 啟動後再人工最大化, 視窗的位置就沒有問題. 所以我改在程式中調整 WindowState := wsMaximized 來處理. 不過放在 OnShow 卻狀況還是一樣, 然後改在 OnActive 執行才可以. 不過以上的測試結果有可能會因為 XP 的視窗主題設定有所差異. 雪龍
http://bestlong.no-ip.com/
學海無涯覺無盡,勤做筆記防失憶 發表人 - bestlong 於 2005/06/28 09:43:58
------
http://blog.bestlong.idv.tw/ http://www.bestlong.idv.tw/ http://delphi-ktop.bestlong.idv.tw/ |
supman
尊榮會員 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
您好:
以下程式碼可以取得工作列大小並將Form設定為切齊工作列的大小.
procedure TForm1.Button1Click(Sender: TObject);
var
abd: TAppBarData;
begin
abd.cbSize:=sizeof(abd);
SHAppBarMessage(ABM_GETTASKBARPOS, abd);
Form1.Top:=0;
Form1.Left:=0;
Form1.Width:=abd.rc.Right;
Form1.Height:=abd.rc.Top;
end; 取得工作區大小:
//GetSystemMetrics(SM_CXFULLSCREEN); //取得工作區域的寬
//GetSystemMetrics(SM_CYFULLSCREEN); //取得工作區域的高 另外這一篇解析度異動時的處理,也給你參考.
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30728
|
jest0024
高階會員 發表:11 回覆:310 積分:224 註冊:2002-11-24 發送簡訊給我 |
|
JustinShen
中階會員 發表:22 回覆:104 積分:80 註冊:2003-09-20 發送簡訊給我 |
|
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |