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

Button

尚未結案
richardc
一般會員


發表:9
回覆:6
積分:3
註冊:2003-04-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-07 15:20:40 IP:61.59.xxx.xxx 未訂閱
如何設定成按Enter鍵,即如同使用滑鼠去點Button鍵?
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-07 15:39:22 IP:61.221.xxx.xxx 未訂閱
引言: 如何設定成按Enter鍵,即如同使用滑鼠去點Button鍵?
richardc, 您好 只要先設定Focus到Button, 就可以符合您的需求了。 試試看! ======================= 是非終日有,不聽自然無 天下本無事,庸人自擾之
richardc
一般會員


發表:9
回覆:6
積分:3
註冊:2003-04-16

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-07 16:13:33 IP:61.59.xxx.xxx 未訂閱
何謂"先設定Focus到Button",Sorry!我是BCB新手,請多包含詳盡說明!謝謝!! 需設定"OnKeyDown"嗎?
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-07 17:23:39 IP:61.221.xxx.xxx 未訂閱
引言: 何謂"先設定Focus到Button",Sorry!我是BCB新手,請多包含詳盡說明!謝謝!! 需設定"OnKeyDown"嗎?
richardc, 您好 例如:
void __fastcall TForm1::FormActivate(TObject *Sender)
{
   Button1->SetFocus();
}    void __fastcall TForm1::Button1Click(TObject *Sender)
{
   ShowMessage("OK");
}
 
如此只要按下enter就會Show出Message了。 試試看! ======================= 是非終日有,不聽自然無 天下本無事,庸人自擾之 發表人 - tech_state 於 2003/05/07 17:26:29
richardc
一般會員


發表:9
回覆:6
積分:3
註冊:2003-04-16

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-05-07 17:37:30 IP:61.59.xxx.xxx 未訂閱
Sorry!我照做,應是可以!可是我的Button是用"SpeedButton",compiler後,出現 "SetFocus is not a member of TSpeedButton",應要如何處理?
brook
資深會員


發表:57
回覆:323
積分:371
註冊:2002-07-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-05-07 19:27:40 IP:218.160.xxx.xxx 未訂閱
     void __fastcall TFormParam::FormKeyPress(TObject *Sender, char &Key)
{
  switch (Key)
  {
    case VK_RETURN:
    case VK_DOWN: Perform(WM_NEXTDLGCTL,0,0);
    break;        case VK_UP: Perform(WM_NEXTDLGCTL,1,0);
    break;        default:
    break;
  }
}    
brook
資深會員


發表:57
回覆:323
積分:371
註冊:2002-07-12

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-05-07 19:39:59 IP:218.160.xxx.xxx 未訂閱
     void __fastcall TFormParam::FormKeyPress(TObject *Sender, char &Key)
{
  switch (Key)
  {
    case VK_RETURN: Button1Click(Sender);
    break;
    default:
    break;
  }
}    
[/quote]
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-05-07 20:52:27 IP:140.135.xxx.xxx 未訂閱
richardc您好:    
引言:如何設定成按Enter鍵,即如同使用滑鼠去點Button鍵?
您的意思是指說,按下鍵盤的Enter鍵後,SpeedButton就會被Click嗎??? 可以參考下面的code試試 先將Form的KeyPreview的屬性設定為true
 
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
  if (Key==13)
  SpeedButton1->Click();
}    void __fastcall TForm1::SpeedButton1Click(TObject *Sender)
{
 ShowMessage("按鈕被按到了~~");
}
 
希望沒有誤會您的意思.. 順心 <>~我也是在學習的階段,所以請您多多見諒與指教~ 發表人 -
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-05-07 22:53:04 IP:203.204.xxx.xxx 未訂閱
引言: Sorry!我照做,應是可以!可是我的Button是用"SpeedButton",compiler後,出現 "SetFocus is not a member of TSpeedButton",應要如何處理?
richardc, 您好 因為您是用SpeedButton, 而SpeedButton並沒有SetFocus這個Method, 所以才會發生上述的情形。 如果您使用SpeedButton只是為了可以顯示icon來美化介面, 那麼TBitBtn這個元件也可以試試, 他也可以顯示icon。 如果您需要此功能又一定要用SpeedButton的話, 前二位提供的方法都可以試試。 ======================= 是非終日有,不聽自然無 天下本無事,庸人自擾之
系統時間:2024-04-20 6:27:36
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!