Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.05.11;
Скачать: CL | DM;

Вниз

получение текстового представления из виртуального кода клавиши   Найти похожие ветки 

 
ter   (2007-09-03 10:15) [0]

вот неработающий код:

procedure Button1Click(Sender: TObject);
Var FModifiers: Byte;
 FHotKey: Byte;
 C: TListItem;
 Key: Longint;
begin
 C := hList.ItemFocused;
 if C = nil then Exit;
 FModifiers := 0;
 if cControl.Checked then
   FModifiers := FModifiers or MOD_CONTROL;
 if cShift.Checked then
   FModifiers := FModifiers or MOD_SHIFT;
 if cAlt.Checked then
   FModifiers := FModifiers or MOD_ALT;
 if cWin.Checked then
   FModifiers := FModifiers or MOD_WIN;
 FHotKey := HotKey1.HotKey;
 Key := MakeWord(FHotKey,FModifiers);
 C.SubItems[0] := KeyToText(Key);
 C.Data := Pointer(Key);
end;

function KeyToText(Key: Longint): String;
Var FModifiers: Byte;
 FHotKey,res: Byte;
 S,AA: String;
 A: array[0..31] of char;
 VirtCode,ScanCode: Integer;
begin
 FModifiers := LoWord(HiByte(Key));
 FHotKey := LoWord(LoByte(Key));
 S := "";
 if (FModifiers and MOD_CONTROL) = MOD_CONTROL then S := S + "Control+";
 if (FModifiers and MOD_SHIFT) = MOD_SHIFT then S := S + "Shift+";
 if (FModifiers and MOD_ALT) = MOD_ALT then S := S + "Alt+";
 if (FModifiers and MOD_WIN) = MOD_WIN then S := S + "Win+";
 ScanCode := MapVirtualKeyEx(FHotKey, 0);
 A := #0;
 res := GetKeyNameText(ScanCode,A, 32);
 Result := S + StrPas(A);
end;


 
ter   (2007-09-03 10:30) [1]

Все, вопрос снят, проблема решена:
 ScanCode := MapVirtualKey(FHotKey, 0) shl 16;


 
Leonid Troyanovsky ©   (2007-09-03 10:52) [2]


> ter   (03.09.07 10:15)  

>  FHotKey := HotKey1.HotKey;

ShortCutToText(FHotKey)

--
Regards, LVT.


 
ter   (2007-09-03 11:02) [3]

это ж где такая функция объявлена?


 
Leonid Troyanovsky ©   (2007-09-03 11:10) [4]


> ter   (03.09.07 11:02) [3]

> это ж где такая функция объявлена?

В хелпе ;)

--
Regards, LVT.


 
ter   (2007-09-03 11:12) [5]

нету в хелпе
delphi 2007


 
Leonid Troyanovsky ©   (2007-09-03 11:21) [6]


> ter   (03.09.07 11:12) [5]

> нету в хелпе

Menus.ShortCutToText

--
Regards, LVT.


 
ter   (2007-09-03 11:24) [7]

О!
спасибо!



Страницы: 1 вся ветка

Текущий архив: 2008.05.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
2-1207753937
Омск
2008-04-09 19:12
2008.05.11
Перевод миль в километры


4-1188809871
Prohodil Mimo
2007-09-03 12:57
2008.05.11
Проблема с немодальными окнами.


4-1188469370
istok
2007-08-30 14:22
2008.05.11
проблема с unhook...


15-1206965596
БарЛог
2008-03-31 16:13
2008.05.11
Имеет ли взрослый ребенок моральное право влезать в спор...


15-1206403811
Hero
2008-03-25 03:10
2008.05.11
Пытаюсь сделать sudoku