Question : comment simplifier ceci

Bonjour,

Shift : TShiftState ; le

TShiftState = a placé de (ssShift, ssAlt, ssCtrl, ssLeft de
, ssRight, ssMiddle, ssDouble) ;

Ok, mais son non compatible avec d'autres langues comme C++
So que je dois le rendre compatible dans mon param, like

TMyParam = kbShift emballé du record
: DWORD ;
end ;

I AM faisant de cette façon… le ssShift du

if dans le then
kbShift de décalage : = nombre entier (ssShift) ; ssAlt du
if dans le then
kbShift de décalage : = kbShift ou nombre entier (ssAlt) ; ssCtrl du
if dans le then
kbShift de décalage : = kbShift ou nombre entier (ssCtrl) ;
//for chaque type que je dois le faire, est-ce que mais peut-être une boucle peut faire ceci ? le

So du
… que je peux appeler le ssCtrl renversé du like

if de manière dans le

But du then
de kbShift…, je pensent qu'il y a une meilleure manière de faire que… j'ai essayé de faire une boucle mais aucun success

kbShift : = -1 ;
for i : = bas (TShiftState) au do
if (de TShiftState) then
kbShift (de TShiftState (i) dans le décalage) : = kbShift ou TShiftState (i) ; travail du

not du
… ! idée du hehe

Some ?

Regards,
Carlos
class= de

Réponse : comment simplifier ceci

NOTE :
Ressemble à de vous le besoin la constante virtuelle de code principal représentée dans votre variable de TShiftstate. Using le nombre entier (ssShift), le nombre entier (ssAlt), etc. ne travaillera pas car il renverra la valeur ordinale de l'article d'ensemble. c.-à-d. le décalage renverra 0, alt renverra 1, etc. N'est pas je suis assez sûr ceci ce que vous voulez.

si vous avez besoin de la valeur principale virtuelle, employer n'importe quoi de pareil :
variété kc : nombre entier ;

kc : = 0 ;
si ssShift dans AShiftState puis kc : = kc OU VK_SHIFT ;
si ssCtrl dans AShiftState puis kc : = kc OU VK_CONTROL ;
si ssALT dans AShiftState puis kc : = kc OU VK_MENU ;

si vous devez l'employer pour des messages de souris, employer n'importe quoi de pareil :
si ssShift dans AShiftState puis kc : = kc OU MK_SHIFT ;
si ssCtrl dans AShiftState puis kc : = kc OU MK_CONTROL ;
//alt non soutenu dans le message de souris, vous devriez employer quelque chose comme GetKeyState le déterminer

Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us