Button結合按鍵的問題 |
答題得分者是:GrandRURU
|
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
我寫了一個程式想要測試出某個結果
[code cpp] //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { char *aa; if(aa == "38") { Button1->Enabled= true; } if(Button1->Enabled == true) { Button2->Enabled= false; } if(Button2->Enabled == false) { Label1->Caption = "試試看" ; } } //--------------------------------------------------------------------------- [/code] 我的問題是 1.Button按下去是Button->Enabled=true Button放開是Button->Enabled=false 是這樣子嗎? 2.希望我按下鍵盤的方向鍵上能對Button產生致能。 這個程式該如何修改 |
GrandRURU
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
建議你用TSpeedButton來處理,它有個叫Up、Down的屬性
方向鍵的話就用OnKeyPress事件來抓吧 ===================引 用 超級賽亞人3 文 章=================== 我寫了一個程式想要測試出某個結果 [code cpp] //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { char *aa; if(aa == "38") { Button1->Enabled= true; } if(Button1->Enabled == true) { Button2->Enabled= false; } if(Button2->Enabled == false) { Label1->Caption = "試試看" ; } } //--------------------------------------------------------------------------- [/code] 我的問題是 1.Button按下去是Button->Enabled=true Button放開是Button->Enabled=false 是這樣子嗎? 2.希望我按下鍵盤的方向鍵上能對Button產生致能。 這個程式該如何修改 |
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
修改後,可是還是沒動作
把KEY值放入Label3 Label3應該會有個動作。 [code cpp] void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key) { Label3->Caption = (int)Key; if(Label3->Caption == 38){ Button1->Enabled= true; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender ) { if(Button1->Enabled == true) { Button2->Enabled= false; } if(Button2->Enabled == false) { Label1->Caption = "試試看" ; Button3->Caption = "亂按"; } } [/code] |
GrandRURU
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
你的Focus什麼時候會指到Form上呢?
===================引 用 超級賽亞人3 文 章=================== 修改後,可是還是沒動作 把KEY值放入Label3 Label3應該會有個動作。 [code cpp] void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key) { Label3->Caption = (int)Key; if(Label3->Caption == 38){ Button1->Enabled= true; } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender ) { if(Button1->Enabled == true) { Button2->Enabled= false; } if(Button2->Enabled == false) { Label1->Caption = "試試看" ; Button3->Caption = "亂按"; } } [/code] |
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
我是參考範例寫的
它的全文是 [code cpp] //--------------------------------------------------------------------------- #include #pragma hdrstop #include "main.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift) { Label4->Caption = (int)Key; } //--------------------------------------------------------------------------- void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key) { Label3->Caption = (int)Key; } //--------------------------------------------------------------------------- [/code] 因為我看測試可以跑 可是加入button元件後就不能跑了 |
GrandRURU
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
因為你的焦點一直在button上啊…orz
用這個試試看吧 [code cpp] //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1KeyPress(TObject *Sender, char &Key) { Button2->Caption = (int)Key; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2KeyPress(TObject *Sender, char &Key) { Button1->Caption = (int)Key; } //--------------------------------------------------------------------------- [/code] ===================引 用 超級賽亞人3 文 章=================== ...43... 因為我看測試可以跑 可是加入button元件後就不能跑了 |
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
|
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
|
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
我寫好了,不過device沒動作,Button事件阿!!按下去跟放開要怎麼寫阿!
[code cpp] void __fastcall TForm1::FormKeyPress(TObject *Sender, char &Key) { Label6->Caption = (int)Key; Label6->Caption = Label6->Caption; if(Label6->Caption == 96) { Button1->Enabled= true;Label6->Caption ="STOP"; } if(Label6->Caption == 104) { Button2->Enabled= true;Button11->Enabled= true;Label6->Caption ="上"; } //上 if(Label6->Caption == 100) { Button3->Enabled= true;Button8->Enabled= true;Label6->Caption ="左";} //左 if(Label6->Caption == 102) { Button4->Enabled= true;Button9->Enabled= true;Label6->Caption ="右";} //右 if(Label6->Caption == 98) { Button5->Enabled= true;Button12->Enabled= true;Label6->Caption ="下";} //下 if(Label6->Caption == 103) { Button6->Enabled= true;Button13->Enabled= true;Label6->Caption ="遠";} //近 if(Label6->Caption == 105) { Button7->Enabled= true;Button14->Enabled= true;Label6->Caption ="近";} //遠 } [/code] |
GrandRURU
站務副站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
|
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
|
超級賽亞人3
一般會員 ![]() ![]() 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |