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

Вниз

Как горячими клавишами переключать пункты в MainMenu?   Найти похожие ветки 

 
BadTester   (2006-10-02 20:50) [0]

Как горячими клавишами переключать пункты в MainMenu?

На Ctrl +Alt + (+) и (-)
Делаю так

procedure TForm1.FormCreate(Sender: TObject);
const
MOD_ALT = 1;
MOD_CONTROL = 2;

begin
// Register Hotkey Ctrl + Alt + (-)
id1 := GlobalAddAtom("Hotkey1");
RegisterHotKey(Handle, id1, MOD_CONTROL + MOD_Alt, $BD);

// Register Hotkey Ctrl + Alt + (+)
id2 := GlobalAddAtom("Hotkey2");
RegisterHotKey(Handle, id2, MOD_CONTROL + MOD_Alt, $BB);
end;

// Trap Hotkey Messages
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
var
ThreadId: Cardinal;
M: TWMMenuSelect;
begin
//Back---------------------------------------
if Msg.HotKey = id1 then
 
  ShowMessage("Ctrl + Alt + (-)  BACK >>");

//Next----------------------------------------
if Msg.HotKey = id2 then

  ShowMessage("Ctrl + Alt + (+)  NEXT >>");

end;

Как сделать так чтоб можно было переключать пункты меню назад и вперед?


 
Leonid Troyanovsky ©   (2006-10-02 22:29) [1]


> BadTester   (02.10.06 20:50)  

> Как горячими клавишами переключать пункты в MainMenu?


MenuItemN.ShortCut := TextToShortCut("Ctrl+Alt+N"); // Next
MenuItemP.ShortCut := TextToShortCut("Ctrl+Alt+P"); // Prev

--
Regards, LVT.


 
BadTester   (2006-10-04 11:54) [2]

А если у меня в меню 20 пунктов? как переключать их поочередности ?


 
BadTester   (2006-10-04 11:58) [3]

Например нажимаю CTRL+ALT+(+) то переключает на следующий пункт меню, а если  CTRL+ALT+(-) то на предедущий. Как осущевствить? Помогите.


 
Leonid Troyanovsky ©   (2006-10-04 13:17) [4]


> BadTester   (04.10.06 11:54) [2]

> А если у меня в меню 20 пунктов? как переключать их поочередности


Стрелка вверх/вниз.

--
Regards, LVT.



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

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

Наверх




Память: 0.47 MB
Время: 0.035 c
15-1161788868
nordic3
2006-10-25 19:07
2006.11.12
Операции над двоичными числами


2-1161857520
Khabibulin
2006-10-26 14:12
2006.11.12
MailSlot


15-1161633915
matt
2006-10-24 00:05
2006.11.12
Бегущий по лезвию


3-1157838144
lookin
2006-09-10 01:42
2006.11.12
Значение поля - только определенные величины


9-1138616293
Yanis
2006-01-30 13:18
2006.11.12
Почему этот код вызывает ошибку