Ищу любой пример индикатора, где есть Ctrl+ХотКей - страница 3

 
Alain Verleyen #:
Не работает с клавишей CTRL+, только с клавишей SHIFT+, и нет возможности поймать клавишу ALT+клавиша

Может получится с идентификатором

TERMINAL_KEYSTATE_CONTROL

Состояние клавиши "Ctrl"


а вот Alt действительно по какой-то причине отсутствует. Зато есть очень много других…

 
Alexey Viktorov # :

Может получится с идентификатором

TERMINAL_KEYSTATE_CONTROL

Состояние клавиши "Ctrl"


а вот Alt действительно по какой-то причине отсутствует. Зато есть очень много других…

Нет, не работает с "Ctrl" и клавишей.
 
Alain Verleyen #:
Нет, не работает с "Ctrl" и клавишей.

Я проверял, работает. Работает даже Ctrl+Shift+клавиша… Только надо понимать, что если вы хотите получить событие по Ctrl+C или V, то системные действия копирование\вставка перехватят и до OnCartEvent() действие не дойдёт. Попробуйте  Ctrl+S

 
Alexey Viktorov # :

Я проверял, работает. Работает даже Ctrl+Shift+клавиша…  Только надо понимать, что если вы хотите получить событие по Ctrl+C или V, то системные действия копирование\вставка перехватят и до OnCartEvent() действие не дойдёт. Попробуйте  Ctrl+S

Я прекрасно понимаю. С Ctrl+S тоже не работает.

Извините за неполноту, нам нужно решение для перехвата ВСЕХ комбинаций клавиш.

 
Alain Verleyen #:
Нет, не работает с "Ctrl" и клавишей.

Да, функционал ограничен.

 
Alain Verleyen #:
Нет, не работает с "Ctrl" и клавишей.

У меня Ctrl + F7 используется для выгрузки эксперта. Работает прекрасно.

void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
    if(id == CHARTEVENT_KEYDOWN) // keyboard event
    {
         if(TerminalInfoInteger(TERMINAL_KEYSTATE_CONTROL) < 0) // ctrl key is pressed
         {
              if(lparam == 0x76) // F7 is pressed
              {
                  ExpertRemove();
              }
         }
    }
}
 
Ilya Filatov #:

У меня Ctrl + F7 используется для выгрузки эксперта. Работает прекрасно.

Всё прекрасно работает за исключением горячих клавиш винды… Вот в частности Ctrl+S — «Сохранить» или Ctrl+P — «Печать» и многое другое. А как перехватить виндовые действия, я не нашёл. Да и не сильно искал. Может кто знает и когда-то напишет…

 
Ilya Filatov # :

У меня Ctrl + F7 используется для выгрузки эксперта. Работает прекрасно.

Проблема с языком (я использую автоматический перевод). Я имел в виду, что это работает не всегда, для всех комбинаций, а только для некоторых из них.