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

關於快速鍵問題

答題得分者是:chenyk
francolau
一般會員


發表:4
回覆:4
積分:1
註冊:2006-11-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-06-19 18:35:46 IP:125.31.xxx.xxx 訂閱

在鍵盤中所有字母(a~z)都可用作快速鍵, 但有些符號鍵如 : " < > ? { } 等是否都可用作快速鍵? 他們的編碼又是什麼?
chenyk
高階會員


發表:14
回覆:95
積分:171
註冊:2002-07-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-06-20 16:11:45 IP:202.39.xxx.xxx 訂閱
可以
用對應的ascii 碼就行了
francolau
一般會員


發表:4
回覆:4
積分:1
註冊:2006-11-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-06-21 11:29:55 IP:122.100.xxx.xxx 訂閱
可以具體說明嗎? 

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
case key of
VK_F : close;
end;
end;

如果不用(F)鍵而要用(?)鍵, 應該如何改寫??


===================引 用 chenyk 文 章===================
可以
用對應的ascii 碼就行了
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-06-21 15:37:46 IP:61.67.xxx.xxx 未訂閱
如果你要用很特殊的的符號, 請在 KeyPress 事件上做, 因為 KeyPress 是用 ASCii 碼識別, 只要找出 ? 的 ASCii碼判別即可
chenyk
高階會員


發表:14
回覆:95
積分:171
註冊:2002-07-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-07-01 22:19:33 IP:123.195.xxx.xxx 訂閱
我覺得不用太執著於找到字元對應的碼
你可以用下面的測試碼

procedure TForm1.form1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
edit1.text := Format('this is a %d',[key]);
end;
procedure TForm1.forrm1KeyPress(Sender: TObject; var Key: Char);
begin
edit1.text := Format('this is a %s',[key]);
end;

很簡單就可以知道,按下按鍵後(如 ?) key 值的變化
再利用 if..else 或者 case...end 作判斷,而達到你要的目的
系統時間:2024-05-07 7:56:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!