線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:905
推到 Plurk!
推到 Facebook!

請問大大!要如何作出只能按button才能進入畫面使用

尚未結案
houngjc
一般會員


發表:12
回覆:13
積分:5
註冊:2004-11-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-13 17:57:07 IP:203.204.xxx.xxx 未訂閱
請教各位大大!我想使程式進入本畫面後,必須按我自行設定的按鍵,才能進入使用,該如何做呢?謝謝 發表人 - taishyang 於 2005/03/14 00:00:08
~SAI~
一般會員


發表:5
回覆:9
積分:2
註冊:2005-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-13 23:02:06 IP:61.231.xxx.xxx 未訂閱
引言: 使程式進入本畫面後,必須按我自行設定的按鍵,才能進入使用
您指的進入本畫面是開啟後的主畫面嗎? 可以試試Object Inspector裡的Enabled,將它設為false,應該可以!
海星
高階會員


發表:41
回覆:217
積分:106
註冊:2003-01-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-13 23:06:28 IP:59.104.xxx.xxx 未訂閱
首先先把其他的按鈕、Edit..等元件 Enabled 設成 false, 然後你的設定按鈕執行完畢後,再用程式碼把這些元件的 Enabled 一個一個設成 true.. 這樣子就好了。 (其實比較快的方法是放一個 Panel, 然後把一些元件都擺在上面, 一開始一樣 Panel 的 Enaled 設成 false, 這樣就不用一個一個元件設定, 但你的設定按鈕不可以放在這個 Panel 上面, 不然連你的設定按鈕都不能 使用, 要讓這群元件都可以使用, 就設 Panel Enabled = true 就好了 發表人 - 海星 於 2005/03/13 23:11:39
houngjc
一般會員


發表:12
回覆:13
積分:5
註冊:2004-11-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-14 00:34:04 IP:203.204.xxx.xxx 未訂閱
感謝大大的回答!可是大大說的我無法用內!!小弟想說設計一個視窗!然後使用者進入後!會出現歡迎使用的button!使用者必須按下才能使用視窗的各個選項,但是我的情形是,出現此button後!我後面的選項功能還是可開啟!如果像大大説的一個個設要如何設ㄚ!或者一次全部設定?< >< >
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-14 00:49:29 IP:203.67.xxx.xxx 未訂閱
早說嘛~一開始說出你要的過程就簡單多了  首先你建立兩個 class="code"> formWelcome->ShowModel(); 在 formWelcome 的 OnClose 裡頭寫這樣
    Action = caFree;
在按鈕的 OnClick 裡頭寫這樣
    Close();
至於如何使用多個Form的設定,就請你自行看書啦 試看看吧~ --
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
houngjc
一般會員


發表:12
回覆:13
積分:5
註冊:2004-11-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-03-14 15:34:21 IP:203.204.xxx.xxx 未訂閱
chtai大大!!我照你方法作!可是為何它說找不到此formWelcome所以在formWelcome->ShowModel(); 這一行就有問題了,請問還要改什麼東西嗎??
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-03-14 16:53:48 IP:59.104.xxx.xxx 未訂閱
houngjc 您好,用不著大大來大大去的, 雖然看了心裡頭會暗爽,不過我也只是個新手罷了< > 你沒有去看多個視窗的相關資料厚,不然怎麼會有這個問題產生< > 照以下的步驟試看看,不過我還是強烈建議你去找本書,把裡頭如何產生多個 Form 的章節看一看 >#> 吧, 你在那一行底下加上 <>#> 即可。 >
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
cashyy
高階會員


發表:117
回覆:322
積分:212
註冊:2004-04-30

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-03-14 17:01:23 IP:140.127.xxx.xxx 未訂閱
首先你建立兩個 Form,一個是主要的,另一個就放個按鈕就好了。
我們就叫它 formMain 跟 formWelcome 吧。
也就是說:一個Form叫formMain,另一個Form叫formWelcome
或者不用改,直接用Form1、Form2就可以了!下次請看清楚了!
在 formMain 的 OnCreate 裡頭叫出 formWelcome.            formWelcome->ShowModal();
Form2->ShowModal();//就可以了!    在 formWelcome 的 OnClose 裡頭寫這樣        Action = caFree;    在按鈕的 OnClick 裡頭寫這樣        Close();
記得感謝chtai大大吧!還有其他大大啦!
chtai大大,回的真快!
發表人 - cashyy 於 2005/03/14 17:09:40
海星
高階會員


發表:41
回覆:217
積分:106
註冊:2003-01-09

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-03-14 17:15:38 IP:211.20.xxx.xxx 未訂閱
首先你要先建立第二個視窗,假設視窗的名字就是 formWelcome, 而且他的檔案名稱叫做 Welcome.cpp, Welcome.h 然後你的主視窗的檔名叫做 Unit1.cpp 你必須在 Unit1.cpp 檔案內加入一行 #include "welcome.h" 讓 Unit.cpp 認識知道 formWelcome 這個 class 才行, 其他的就照 chtai 說法就行了, 在 oncreate 事件中加入 formWelcome->ShowModal(); 注意!! 是ShowModal(); chtai 筆誤打成 ShowModel(); 去了. formWelcome的 OnClose 事件要加入 Action = caFree; 這一行不要加入了, 好像你是新手..連 include 也不知道,加上這一行你的程式會當掉。 硬要加的話,必須把 formWelcome 改成動態產生,在呼叫 formWelcome->ShowModal(); 前,必須先執行 formWelcome = new TformWelcome(Application ); 所以乾脆就都不要加比較省事,反正對小程式來說不改成動態視窗也不會怎樣。
海星
高階會員


發表:41
回覆:217
積分:106
註冊:2003-01-09

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-03-14 17:20:20 IP:211.20.xxx.xxx 未訂閱
抱歉..剛有點事..處理完回來繼續打字..上面已經有人解答了.. 反正他的答案跟我一模一樣.意思完全相同,照他們的方法做就對了。
houngjc
一般會員


發表:12
回覆:13
積分:5
註冊:2004-11-21

發送簡訊給我
#11 引用回覆 回覆 發表時間:2005-03-14 18:23:00 IP:203.204.xxx.xxx 未訂閱
不知是否小弟愚昧!用以上方法還是會有錯!!我的想法是我建立父form與子form ,然後程式開始前會秀出歡迎使用的form,如果沒按歡迎使用的form就不能進入父form這樣,且再按按歡迎使用的form時,父form的功能是要被禁止的!請問大大我就是照上面所打的一樣,程式可組譯,執行後就會出問題,問題還是它ShowModal(); ,< >< >
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#12 引用回覆 回覆 發表時間:2005-03-14 18:48:45 IP:59.104.xxx.xxx 未訂閱
引言: 不知是否小弟愚昧!用以上方法還是會有錯!!我的想法是我建立父form與子form ,然後程式開始前會秀出歡迎使用的form,如果沒按歡迎使用的form就不能進入父form這樣,且再按按歡迎使用的form時,父form的功能是要被禁止的!請問大大我就是照上面所打的一樣,程式可組譯,執行後就會出問題,問題還是它ShowModal(); ,< >< >
首先感謝海星大哥指正。的確,若不是使用動態產生的話,不應該加入 Action = caFree; 這一點是我疏忽了 再來回應 > <> 因為你要先有個歡迎視窗,關掉歡迎視窗之後才是主畫面。 所以我們建立兩個 > <> 再來因為要在主視窗裡頭呼叫歡迎視窗,所以我們得在程式碼上方加入 <>#>。這樣主視窗才知道要去哪裡找歡迎視窗。 <> 為了要在程式啟動時就跳出歡迎視窗,所以我們得在 > <> 為了要做到『不關掉歡迎視窗就不能去按主畫面』,所以叫出 class="code">formWelcome->ShowModal();若是你打成 Show() 那就無法達到你的要求了。 沒意外的話,應該這樣就行了。 可是你卻說還是有問題,但也沒說是什麼問題,這很難讓人明白哩 若有問題的話,就貼出錯誤訊息或是
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
houngjc
一般會員


發表:12
回覆:13
積分:5
註冊:2004-11-21

發送簡訊給我
#13 引用回覆 回覆 發表時間:2005-03-15 13:40:41 IP:203.204.xxx.xxx 未訂閱
恩!感謝大大詳細指導!所以我照大大一步一步做!開新檔來做!發現大大說的沒錯!是可以執行!但是如果用在我原本程式中!就會產生此錯誤! Project pu1.exe raised exception class EInvalidOperation with message  "Cannot make a visible window modal".Process stopped .  原因還是於Wellcome->ShowModal();只要這行沒加!就會過!但是主選單跟歡迎光臨都會同時出現!但我從新做一個project就不會有此情形發生! 請問!這是什麼原因!                            總是要把問題解決的人!
系統時間:2024-05-03 0:17:49
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!