全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2174
推到 Plurk!
推到 Facebook!

關於Form不能被改變size的問題? 及MDI子Form開啟的問題?

缺席
linda_wei
一般會員


發表:44
回覆:31
積分:20
註冊:2004-04-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-11-02 09:15:11 IP:220.140.xxx.xxx 訂閱
問題1):在畫面上Create另一個form, 不想讓user可以隨便拉動而改變form的大小,該怎麼做呢?
問題2):關於MDI子form的問題, 我的MDI子Form是由Menu選取所開啟的.
如果我的MDI子Form已經開啟,且被user 最小化了,
那當user再次點選取Menu時,
該如何判定子Form已被關閉(重新Create子Form),
或是子Form被最小化(將子Form重新叫起)呢?
GGump
一般會員


發表:2
回覆:16
積分:8
註冊:2006-08-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-01-07 16:47:32 IP:122.124.xxx.xxx 訂閱

我也正在嘗試,還不確定實際詳細的作法。
我是參考這個討論串:
[code xml]

[/code]

syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-01-07 18:09:00 IP:61.64.xxx.xxx 訂閱
I喔!被抓到了喔!,你不會用 BCB 喔!,甚至連書都不看喔!才會連基礎都不會喔!
為了你好,可以的話,下次這種問題到新手區區問

1. 將 From 設成 bsSingle
2.你不會檢查該 MDIForm 是否為 nil來判定需不需要重新建立?visible 是否為 True 判定是否需要 Show

看書、看 Help、看什麼都行

有些問題實在不適合公開詢問,會讓人認為你 ....


===================引 用 linda_wei 文 章===================
問題1):在畫面上Create另一個form, 不想讓user可以隨便拉動而改變form的大小,該怎麼做呢?
問題2):關於MDI子form的問題, 我的MDI子Form是由Menu選取所開啟的.
如果我的MDI子Form已經開啟,且被user 最小化了,
那當user再次點選取Menu時,
該如何判定子Form已被關閉(重新Create子Form),
或是子Form被最小化(將子Form重新叫起)呢?
GGump
一般會員


發表:2
回覆:16
積分:8
註冊:2006-08-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-01-09 10:21:21 IP:122.124.xxx.xxx 訂閱
這真是很糟糕的回覆
當然就是不會
才會在這裡發問呀
1.對於無法改大小的Form
利用對BorderStyle的設定來拿掉邊框確實有效
不過應該是設成bsNone吧?
會從改大小聯想到找邊框設定
根本就不是基礎問題


===================引 用 syntax 文 章===================
I喔!被抓到了喔!,你不會用 BCB 喔!,甚至連書都不看喔!才會連基礎都不會喔!
為了你好,可以的話,下次這種問題到新手區區問

1. 將 From 設成 bsSingle
2.你不會檢查該 MDIForm 是否為 nil來判定需不需要重新建立?visible 是否為 True 判定是否需要 Show

看書、看 Help、看什麼都行

有些問題實在不適合公開詢問,會讓人認為你 ....


===================引 用 linda_wei 文 章===================
問題1):在畫面上Create另一個form, 不想讓user可以隨便拉動而改變form的大小,該怎麼做呢?
問題2):關於MDI子form的問題, 我的MDI子Form是由Menu選取所開啟的.
如果我的MDI子Form已經開啟,且被user 最小化了,
那當user再次點選取Menu時,
該如何判定子Form已被關閉(重新Create子Form),
或是子Form被最小化(將子Form重新叫起)呢?
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-01-09 13:10:03 IP:61.64.xxx.xxx 訂閱
的確是很糟糕啊
對不起

我也同意,會問就是不會,但在哪問與如何問,就是個問題
但是有些問題會顯示出你的無知(如果有看書,起碼就不會問的問題之類),與根本自己連努力都不努力(非特指本例)
不懂沒關係,但不努力,誰要幫你?

我還是認為這是基礎問題

1. unresizeable 並不包含 unremoveable
原發問者是說「不想讓user可以隨便拉動改變form的大小」--> 是有前因後果,要解決的是「做到無法改變form的大小」,但還可以移動視窗
而不是說「不想讓user可以隨便拉動改變form的大小」--> 並行的條件,要解決的是兩者
(呵呵,想不到居然還要解釋中文,如果你不滿意,那可能要去請教國文老師)

設成 bsNone 會連移動的機會都沒有(上面三個按鈕與Bar 就會消失),除非你用的 Delphi/BCB 跟我不同
請你去試試看

如果這算不上是基礎,那認為這乃「不是基礎」的人的程度,可想而知

因為關於「會從改大小聯想到找邊框設定」這種東西
有經驗的 Delphi/BCB 設計師不需要聯想,就知道答案(雖然答案不只一種),但改 BorderStyle 這種方式,動作做最少,適合初學者

===================引 用 GGump 文 章===================
這真是很糟糕的回覆
當然就是不會
才會在這裡發問呀
1.對於無法改大小的Form
利用對BorderStyle的設定來拿掉邊框確實有效
不過應該是設成bsNone吧?
會從改大小聯想到找邊框設定
根本就不是基礎問題


===================引 用 syntax 文 章===================
I喔!被抓到了喔!,你不會用 BCB 喔!,甚至連書都不看喔!才會連基礎都不會喔!
為了你好,可以的話,下次這種問題到新手區區問

1. 將 From 設成 bsSingle
2.你不會檢查該 MDIForm 是否為 nil來判定需不需要重新建立?visible 是否為 True 判定是否需要 Show

看書、看 Help、看什麼都行

有些問題實在不適合公開詢問,會讓人認為你 ....


===================引 用 linda_wei 文 章===================
問題1):在畫面上Create另一個form, 不想讓user可以隨便拉動而改變form的大小,該怎麼做呢?
問題2):關於MDI子form的問題, 我的MDI子Form是由Menu選取所開啟的.
如果我的MDI子Form已經開啟,且被user 最小化了,
那當user再次點選取Menu時,
該如何判定子Form已被關閉(重新Create子Form),
或是子Form被最小化(將子Form重新叫起)呢?
編輯記錄
syntax 重新編輯於 2008-01-09 13:12:38, 註解 無‧
syntax 重新編輯於 2008-01-09 13:13:21, 註解 無‧
esp_pzj
初階會員


發表:32
回覆:70
積分:40
註冊:2007-02-09

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-01-09 14:30:25 IP:59.120.xxx.xxx 訂閱

問題1解
form的BorderStyle屬性設為bsDialog
form就不能改變大小 可以移動


問題2解
[code delphi]
if Form2=nil then begin
Form2:=TForm2.Create(nil);
end else begin
Form2.WindowState:=wsMaximized;
end;
[/code]





===================引 用 linda_wei 文 章===================
問題1):在畫面上Create另一個form, 不想讓user可以隨便拉動而改變form的大小,該怎麼做呢?
問題2):關於MDI子form的問題, 我的MDI子Form是由Menu選取所開啟的.
?????? 如果我的MDI子Form已經開啟,且被user 最小化了,
?????? 那當user再次點選取Menu時,
?????? 該如何判定子Form已被關閉(重新Create子Form),
???????????? 或是子Form被最小化(將子Form重新叫起)呢?
------
學藝不精 謝多多指教
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-01-09 23:19:43 IP:61.64.xxx.xxx 訂閱
2. 還缺一項,Free 時 Form2 要設成 nil,不然 Free 後,Form2 不會是 nil,此時,可以想見,會對已釋放的 Form2 呼叫 WindowState:=wsMaximized; 這樣,就會出錯
===================引 用 esp_pzj 文 章===================

問題1解
form的BorderStyle屬性設為bsDialog
form就不能改變大小 可以移動


問題2解
[code delphi]
if Form2=nil then begin
Form2:=TForm2.Create(nil);
end else begin
Form2.WindowState:=wsMaximized;
end;
[/code]





===================引 用 linda_wei 文 章===================
問題1):在畫面上Create另一個form, 不想讓user可以隨便拉動而改變form的大小,該怎麼做呢?
問題2):關於MDI子form的問題, 我的MDI子Form是由Menu選取所開啟的.
?????? 如果我的MDI子Form已經開啟,且被user 最小化了,
?????? 那當user再次點選取Menu時,
?????? 該如何判定子Form已被關閉(重新Create子Form),
???????????? 或是子Form被最小化(將子Form重新叫起)呢?
esp_pzj
初階會員


發表:32
回覆:70
積分:40
註冊:2007-02-09

發送簡訊給我
#8 引用回覆 回覆 發表時間:2008-01-10 08:26:47 IP:59.120.xxx.xxx 訂閱
感謝syntax前輩的指點。
------
學藝不精 謝多多指教
系統時間:2024-05-05 17:58:31
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!