12
votes

Comment créer des raccourcis alt dans une application Formulaires Windows?

J'aimerais créer des raccourcis clavier pour certaines commandes dans mes formulaires Windows.

Exemple:

Capture d'écran de XYZ

Notez le soulignement, F e V p B.

J'ai une étiquette et une commande de texte. J'aimerais associer que raccourci clavier Alt sur l'étiquette et la zone de texte. Donc, si quelqu'un appuie alt + b , la mise au point est donnée à la zone de texte associée. Y a-t-il un moyen de créer cette association?


0 commentaires

3 Réponses :


8
votes

type & fichier code> ou et modifier code> et vous allez souligner. Cela liera automatiquement les lettres soulignées avec mot clé code> pour raccourci.

éditer. Votre question a été modifiée afin que j'aimerais suivre ma réponse. Vous souhaitez attraper une combinaison de clés ( alt + f code>) et définissez une mise au point sur la zone de texte. P>

Vous pouvez essayer cette solution à l'aide de l'événement clé de la forme principale.

    private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.Alt && e.KeyCode == Keys.F)
        {
            this.textBox1.Focus();
        }
    }


2 commentaires

Cela ne semble pas fonctionner. J'utilise un contrôle TABPAGE et je veux que le F soit souligné dans "Font". Changer la propriété .Text de TagPage1 ne le souligne pas.


Eh bien, l'image que vous avez fournie affiche une bande de menu. Vous voulez une police nommée TABPAGE (avec F) et après avoir appuyé sur ALT + F Vous souhaitez que le Tabpage soit affiché. Ai-je raison?



12
votes

Lorsque l'étiquette reçoit la mise au point de la touche d'accélérateur (définie à l'aide de & ), elle transmet la mise au point sur le contrôle suivant de l'ordre des onglets, car les étiquettes ne sont pas modifiables. Vous avez besoin de la zone de texte pour être un contrôle suivant dans l'ordre des onglets.

Pour afficher et corriger l'ordre de l'onglet de votre formulaire, utilisez la commande View + TAB Commande dans l'IDE. À l'aide de Tabpages ou d'autres conteneurs ajoute un niveau de nidification à l'ordre des onglets (par exemple, 1.1 , 1.2 au lieu de 1 et 2 ), mais si l'étiquette et la zone de texte sont dans le même conteneur, il ne doit pas être trop difficile de régler correctement.


0 commentaires

0
votes
this.KeyDown += new KeyEventHandler(Form1_KeyDown);

void Form1_KeyDown(object sender, KeyEventArgs e) 
{ 
 if (e.Alt && e.KeyCode == Keys.W)
 { 
   btnShowConstructionCdFun(); 
 } 
}

0 commentaires