全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1648
推到 Plurk!
推到 Facebook!

PageControl 的快速按鍵

答題得分者是:daldal
kill42el
一般會員


發表:30
回覆:50
積分:16
註冊:2008-06-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-09-21 00:28:30 IP:59.104.xxx.xxx 訂閱
你好
想問一下,PageControl這物件。
PageControl可以增加一個New Page,那有沒有什麼辦法??
可以設定,每一頁可以有快速鍵
如: 按F11就指到第一頁,按F12就指到第二頁
因為,書上都沒有提到關於這方面,想來請教前輩們
daldal
高階會員


發表:6
回覆:102
積分:226
註冊:2007-06-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-09-22 08:41:12 IP:220.130.xxx.xxx 未訂閱
如果你是要設置全域按鍵
來控制某個元件

可以把Form的屬性 KeyPreview=true
加入On Key Down事件,
指定Key=122 (代表F11) , Key=123(代表F12) 要做的事情即可

若是要知道其他的按鍵是多少,
可以ShowMessage(Key)查詢,再把指定的動作寫到事件裡面及可
kill42el
一般會員


發表:30
回覆:50
積分:16
註冊:2008-06-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-09-24 01:35:53 IP:123.204.xxx.xxx 訂閱
你好
照前輩你所說的

[code cpp]
void __fastcall TForm3::PageControl1KeyPress(TObject *Sender, char &Key)
{
Key==122;
TabSheet3->Open;
Key==123;
TabSheet2->Open;
Key==124;
TabSheet1->Open;
}
[/code]
發現TabSheet1不能開啟
請問要怎樣設定才能讓程式知道,是要哪一個TabSheet去開啟呢??

===================引 用 daldal 文 章===================
如果你是要設置全域按鍵
來控制某個元件

可以把Form的屬性 KeyPreview=true
加入On Key Down事件,
指定Key=122 (代表F11) , Key=123(代表F12) 要做的事情即可

若是要知道其他的按鍵是多少,
可以ShowMessage(Key)查詢,再把指定的動作寫到事件裡面及可
daldal
高階會員


發表:6
回覆:102
積分:226
註冊:2007-06-18

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-09-24 09:44:13 IP:220.130.xxx.xxx 未訂閱
要用Key Down Event不能用Key Press Event
因為有些虛擬鍵在Key Press無法偵測到
轉換頁面可以用ActivePageIndex屬性
如下所示

[code cpp]
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift)
{
switch(Key)
{
case 112: //F1 切換第一頁
PageControl1->ActivePageIndex=0;
break;

case 113: //F2 切換第二頁
PageControl1->ActivePageIndex=1;
break;

case 114: //F3 切換第三頁
PageControl1->ActivePageIndex=2;
break;
}
}

[/code]
kill42el
一般會員


發表:30
回覆:50
積分:16
註冊:2008-06-04

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-09-24 19:15:26 IP:123.204.xxx.xxx 訂閱
多謝daldal前輩

詳細的指導
系統時間:2024-05-04 19:18:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!