Главная страница
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-1208190577
Shifr
2008-04-14 20:29
2008.05.11
Помогите с заданием


2-1207828862
dmdel
2008-04-10 16:01
2008.05.11
Управление службами в Windows XP


15-1207017632
TRSteep
2008-04-01 06:40
2008.05.11
Синтаксический анализ


15-1206796838
@!!ex
2008-03-29 16:20
2008.05.11
Что за музыка?


8-1179149657
Elliner
2007-05-14 17:34
2008.05.11
Взаимодействие с программой через веб интерфейс