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

判斷button是否被觸發

尚未結案
superyoung
一般會員


發表:14
回覆:24
積分:7
註冊:2004-07-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-12 10:27:22 IP:210.202.xxx.xxx 未訂閱
請問一下 在一個事件裡 要怎樣寫才能判斷button是否被按下 謝謝 發表人 - taishyang 於 2004/08/12 12:54:45
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-12 10:56:52 IP:219.130.xxx.xxx 未訂閱
OnClick 或 OnMouseDown 看你要處理怎麼事件? Andy Chang
------
Andy Chang
superyoung
一般會員


發表:14
回覆:24
積分:7
註冊:2004-07-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-12 11:07:38 IP:210.202.xxx.xxx 未訂閱
我是要在另一元件裡判斷Button是否OnClick 請問要怎樣寫此判斷式呢(用true 及 false判斷) 謝謝
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-08-12 11:24:05 IP:219.80.xxx.xxx 未訂閱
Hello superyoung,    不曉得你是不是這個意思? 結果都會在Label1顯示.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  Label1->Caption="Button 1被按下";
}    void __fastcall TForm1::Button2Click(TObject *Sender)
{
  Label1->Caption="Button 2被按下";
}
或是也可用一個變數來代表按鍵是否被按下,再搭配Timer使用: ex:
bool btnClick=false;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  btnClick=true;
}
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
   if (btnClick)
      {
       //.....
      }
    else
      {
       //....
      }
}
發表人 - nlj859 於 2004/08/12 14:43:45
mitao
一般會員


發表:34
回覆:5
積分:7
註冊:2003-08-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-08-12 11:33:20 IP:61.228.xxx.xxx 未訂閱
你好: 可以在buttom被按下時,把Enabled設成false 接著在事件中判斷Enabled為true或false即可,試試看!
superyoung
一般會員


發表:14
回覆:24
積分:7
註冊:2004-07-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-08-12 11:57:21 IP:210.202.xxx.xxx 未訂閱
請問有辦法像RadioButton一樣,以checked=true or false來判斷是否觸發 Button可以類似這樣嗎?? 謝謝
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-08-12 12:21:01 IP:219.80.xxx.xxx 未訂閱
hello superyoung, Button沒有提供checked的屬性,所以只好自己用一個bool btnClick變數去判別了.
markov
中階會員


發表:55
回覆:135
積分:53
註冊:2003-12-01

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-08-12 13:09:36 IP:211.21.xxx.xxx 未訂閱
要不你也可以用Button裡的Tag屬性來充當checked的屬性
andychang1690
資深會員


發表:20
回覆:694
積分:442
註冊:2003-03-14

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-08-12 14:21:47 IP:219.130.xxx.xxx 未訂閱
來點複雜的
#include 
Form上的OnMouseDown或OnClick 事件
將你的Button1的事件指向Form上同一事件上
void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)
{
  TComponent *pComponent;
  pComponent = (TComponent *) Sender;
  if (pComponent->Name=="Button1" )
    // Button1被按下
}
請參考
Andy Chang
------
Andy Chang
bass15
高階會員


發表:24
回覆:171
積分:119
註冊:2003-10-27

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-08-12 14:34:40 IP:219.84.xxx.xxx 未訂閱
用SpeedButton吧 在Additional的第二個元件.. 把AllowAllUp設成true 把GroupIndex設成1 然後去判斷SpeedButton1->Down 就可以了...
系統時間:2024-05-19 10:57:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!