SetFocus() |
答題得分者是:m8815010
|
Chenbc
一般會員 發表:31 回覆:33 積分:12 註冊:2004-01-06 發送簡訊給我 |
|
m8815010
版主 發表:99 回覆:372 積分:289 註冊:2003-11-13 發送簡訊給我 |
引言: 請教一下大大當一個Project內第2個FormActivate時把SetFocus指到 Form1->Edit1 如下Chenbc你好< >: 我想依你自已說明的,你應該也會覺得不太可能吧< >! 因為setfocus寫在Form2Active內就會造成Form2一被點到時就會立刻把focus設到Form1(或說Edit1上)! 如果你想要操作Form2上的元件的話,那又表示focus一定不在Form1上了! 所以明顯的兩者是互斥的! 除非你想作作效果的話,之前有小小研究過一下: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=43572 要不然應該是要看Chenbc你真正的需求是什麼,再來想辦法迂迴達到目的了!void __fastcall TForm2::FormActivate(TObject *Sender) { Form1->Edit1->SetFocus(); }這樣好像Form2上的元件都無法用Mouse去選擇或Click. 要如何SetFocus指到 Form1->Edit1的同時又可以操作Form2? 請指教 |
RedSnow
版主 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
Chenbc 您好: 誠如 m8815010 版主所述,您所構想的動作是互斥的,而您並未詳細描述出為何要有這樣的動作?因此觀文者難以瞭解您的實際需求到底是什麼? 如果您只是要讓兩個 Form 都同時能操作的話,下列兩點可以參考一下: 1. 不要使用下列方式叫出 Form2:
Form2 = new TForm2(this); Form2->ShowModal(); delete Form2;改成直接用 Show() 的方式叫出 Form2: Form2->Show();2. Form2 的 FormStyle 屬性設為 fsStayOnTop。 按上述的方式來設定與叫出 Form2 時,Form2 會 "飄" 在 Form1 上方,但是兩個 Form2 同時都可以操作。 您參考一下。 |
Chenbc
一般會員 發表:31 回覆:33 積分:12 註冊:2004-01-06 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |