comment effectuer une maintenez la touche ALT+TAB sendkey événement en C#
Je suis en train d'utiliser un sendkey événement qui maintient la touche ALT enfoncée, puis appuie sur la touche TAB. Comment effectuez-vous cette action, j'ai essayé beaucoup de variations, mais je n'arrive pas à trouver la réponse, merci.
N'est pas Alt-Tab est une spéciale de Windows combinaison de touche qui ne peut pas être gâché avec? Je m'attends à être similaire à Ctrl-Alt-Del.
OriginalL'auteur mendez | 2011-08-05
Vous devez vous connecter pour publier un commentaire.
Utiliser sendkeys PInvoke il est possible de le faire par l'envoi d'ALT événement keydown, ONGLET keydown, puis ONGLET keyup, puis ALT keyup. Il y a aussi une autre façon en utilisant le modificateur ALT, sur la touche, mais je ne me souviens pas exactement de la façon que je n'ai pas travaillé avec elle dans un moment.
Si vous voulez faire plusieurs onglets alterner l'ONGLET keydown et keyup tout en maintenant la touche ALT sur keydown.
J'ai trouvé cet article sur l'utilisation de l'sendkey événements, et j'ai essayé d'utiliser le Système.De Windows.Les formulaires.SendKeys.Send("{Alt}{TAB}{Alt Jusqu'}"); et aveugle dans mon code, mais quand j'essaie d'exécuter le programme, il me donne un message d'erreur indiquant que cette fonction n'existe pas. toutes les suggestions? jetez un oeil à l'article autohotkey.com/docs/commands/Send.htm
En Windows Forms, je ne suis pas sûr, je suis vraiment seulement familier avec les SendKeys à partir du code C++ de la bibliothèque que vous pouvez appeler à l'aide PInvoke. Celui-ci vous permet d'envoyer n'importe quelle combinaison que vous voulez. Aussi que l'article est spécifiquement pour l'utilisation de AutoHotkey.
ouais c'est ce que j'espérais, je veux que mon programme à utiliser alt+tab événement de passer à un autre programme automatiquement. Je n'aime pas utiliser des outils tiers pour faire ma programmation: êtes-vous sûr il n'y a pas un autre moyen?
Je ne le pense pas, l'utiliser comme référence pinvoke.net je n'ai pas essayé avec WinForms, mais je crois qu'il ne vous laisse pas faire de touches spéciales.
OriginalL'auteur Jesus Ramos
Après être passé par le La documentation MSDN page je suis venu avec cela et il semble fonctionner très bien pour moi:
SendKeys.Send("%{Tab}");
OriginalL'auteur Ziad
[Windows.Forms.Sendkeys]::SendWait("%{Alt Down}")
[Windows.Forms.Sendkeys]::SendWait("%{TAB}")
[Windows.Forms.Sendkeys]::SendWait("%{Alt Up}")
Travaille dans Powershell pour moi! Merci pour les conseils 😉
Exception calling "SendWait" with "1" argument(s): "Specified repeat count is not valid."
Vous devez charger les Assemblées
add-type -AssemblyName microsoft.VisualBasic add-type -AssemblyName System.Windows.Forms
OriginalL'auteur Pepa