鍵盤按鍵與SpeedButton事件 |
答題得分者是:GrandRURU
|
超級賽亞人3
一般會員 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
寫一個SpeedButton測試程式
當我按下空白鍵時Lable1會顯示有按到嗎 在SpeedButton裡面顯示Lable2有按到 當SpeedButton事件被觸發時才會執行到Lable 我查了一些SpeedButton關於事件的用法 但是我還是改不出來 想請問高手如何用鍵盤去觸發SpeedButton按鍵按下 空白鍵的ASCII為32 [code cpp] #pragma hdrstop #include "Unit1.h" #include #include //--------------------------------------------------------------------------- #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) { //Label1->Caption = (int)Key; if(Key== 32) { Label1->Caption = "有按到嗎:"; } } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton1Click(TObject *Sender) { Label2->Caption = "有按到"; } //--------------------------------------------------------------------------- [/code] |
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
|
超級賽亞人3
一般會員 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
|
超級賽亞人3
一般會員 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
我看完其他篇的SpeedButton終於知道了
SpeedButton裡面有個屬性是Down true按下去,False放開 我寫了下面的程式 可是SpeedButton1->Down=true 之後應該被按下去 可是我卻要去手動按上來他才會變False 這要怎麼改阿 [code cpp] #pragma hdrstop #include "Unit1.h" #include #include //--------------------------------------------------------------------------- #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) { //Label1->Caption = (int)Key; if(Key == 32) { Label1->Caption = "有按到嗎:"; SpeedButton1->Down = true; } } //--------------------------------------------------------------------------- void __fastcall TForm1::SpeedButton1Click(TObject *Sender) { Label2->Caption = "有按到"; Sleep(500); SpeedButton1->Down = false; } //--------------------------------------------------------------------------- [/code] |
超級賽亞人3
一般會員 發表:38 回覆:53 積分:23 註冊:2007-06-05 發送簡訊給我 |
感謝GrandRURU大大的回答
小弟寫出來了 參考delphi.ktop.com.tw/board.php supman大大的回答 反向思考一下,當Form1的Button按下後直接去呼叫Form2的Button的Event就可以了。 void __fastcall TForm1::Button1Click(TObject *Sender) { Form2->Button1Click(Sender); } 而且我發現Form2->Button1Click(Sender);這一行是無敵的 因為不需要去設定太多 直接Sender出去就好 因為結果是一樣的 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |