Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 14.11.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard Tastenkombination für CHARTEVENT_KEYDOWN

Kann man für CHARTEVENT_KEYDOWN eine Tastenkombination direkt festlegen? Bisher gehe ich den Umweg über eine "Erinnerungsvariable":
Code:
#define KeyA     0x41  // Capital Latin A
#define BothCtrl 0x11  // Left and/or Right Ctrl keys
bool CtrlPress=false;

void OnChartEvent(const int id,const long &lparam,
                  const double &dparam,const string &sparam)
{
   if(id==CHARTEVENT_KEYDOWN)                      //KeyWasPressed
   {
      if(lparam==BothCtrl)                         //BothCtrl 0x11
      {
         CtrlPress=true;
         Print("BothCtrl was pressed");
      }
      if(lparam==KeyA)                             //KeyA 0x41
      {
         Print("KeyA was pressed");
      }
      if(CtrlPress && lparam==KeyA)                //BothCtrl+KeyA
      {
         { Print("Ctrl+KeyA was pressed"); CtrlPress=false; }
      }
   }
}
Das hat aber auch den Effekt, daß man die beiden Tasten hintereinander (und nicht zusammen) drücken muß. Gibt es eine andere Lösung? Dann bitte her mit den Ideen AVT