delphi combobox 快捷键

来源:百度知道 编辑:UC知道 时间:2024/05/28 17:29:06
我想问一下DELPHI的下拉框combobox如何设置快捷键,比如按下ctrl+Q选择上一项,按ctrl+w选择下一项。

方法1:可以按此类方法试试.

procedure TForm1.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
i: integer;
begin
i:= ComboBox1.ItemIndex;
if (Shift = [ssCtrl]) and (key = 81) then
begin
inc(i);
combobox1.ItemIndex:= i;
end;
if (Shift = [ssCtrl]) and (key = 87) then
begin
dec(i);
combobox1.ItemIndex:= i;
end;
end;

方法2:复杂点的要注册快捷键
//全局变量
var
id1,id2: integer;

procedure TForm1.FormCreate(Sender: TObject);
begin
id1:= GlobalAddAtom('hotkey1');
RegisterHotKey(handle,id1,mod_control,81);
id2:= GlobalAddAtom('hotkey2');
RegisterHotKey(handle,id2,mod_control,87);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
UnRegisterHotKey(handle,id1);
UnRegisterHotKey(handle,id2);
end;

procedure TForm1.hotykey(var msg: TMessag