Avatar billede trekkies Juniormester
21. august 2004 - 12:26 Der er 12 kommentarer og
1 løsning

Genvejs taster

Hej alle sammen

Jeg er ved at lave et program, men er løbet ind i et lille problem, jeg vil lave sådan så man kan trykke på tallene på ens tastatur i stedet for at bruge musen, f.eks. 1 for menu 1 og 2 for menu 2, hvordan kan man lave det i c#?

Jeg bruger Microsoft's Visual Studio.NET 2003.

Mvh
Martib Jørgensen
Avatar billede trekkies Juniormester
21. august 2004 - 12:26 #1
UPS, jeg hedder Martin Jørgensen
Avatar billede snepnet Nybegynder
21. august 2004 - 12:32 #2
hej martin, men plejer at lave det med en modifier (ALT), og du kan så bare hvis du f.eks. har en knap med teksten
Knap1
kan du bare angive teksten til f.eks.
Kna&p1
Så kan  du aktivere den ved at trykke ALT+p

var det tilstrækkeligt ?
Avatar billede trekkies Juniormester
21. august 2004 - 12:36 #3
Den metode kender jeg godt, men jeg mener at man kan trykke på 1 på ens tastatur og men kommer ind i den første menu, og hvis man trykker på 2, så kommer man ind i menu 2, jeg har set at nogle programmer har denne funktion.

Kan du forstå hvad jeg mener?
Avatar billede snepnet Nybegynder
21. august 2004 - 12:36 #4
(og du kan sådan set angive flere hvis du vil... f.eks. &kna&p1)
Avatar billede snepnet Nybegynder
21. august 2004 - 12:37 #5
du mener så man ikke behøver at trykke ALT ?
Avatar billede trekkies Juniormester
21. august 2004 - 12:42 #6
Ja.
Avatar billede trekkies Juniormester
21. august 2004 - 12:43 #7
Man slipper for at bruge musen så meget, og bruger tastaturet i stedet for.
Avatar billede snepnet Nybegynder
21. august 2004 - 12:52 #8
Ja - men hvis man ikke må trykke ALT, er det også et spørgsmål om heller ikke at bruge tastaturet så meget ;o)

normalt i windows vil du ikke behøve at trykke ALT for at ramme genvejen når du først har aktiveret menuen.
(hvis du f.eks. åbner startmenuen, kan du bare trykke på en eller anden tast, og du vil blive bragt hen på det første punkt der har en genvej som er den tast du har trykket).

jeg tror kun jeg kan se det gode ved ikke at bruge ALT+<genvejstast> i programmer hvor man som bruger overhovedet ikke kan taste noget ind, men hvis det er sådan det skal være kan du altid samle det event (at der er blevet trykket på en tast) op, og gøre hvad du vil afhængig af hvad der er trykket på.

mvh
Avatar billede snepnet Nybegynder
21. august 2004 - 12:53 #9
Hvis du skal lave den med at snable hvad brugeren trykker på af taster i formen, er det en god idé at sætte KeyPreview til true.
mvh
Avatar billede snepnet Nybegynder
21. august 2004 - 12:57 #10
Altså på din form sætter du :
this.KeyPreview = true;

Og abbonnerer på KeyPress-evented ved :
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.SomeForm_KeyDown);
Avatar billede trekkies Juniormester
21. august 2004 - 12:59 #11
Ja vil prøve at kigge på dit forslag, tak for hjælpen.

Giv et svar så du kan få de 60 point.
Avatar billede snepnet Nybegynder
21. august 2004 - 12:59 #12
Så kan du i SomeForm_KeyDown(...) lave sådan noget her :

switch(e.KeyData)
{
    case Keys.A :
        DoSomethingALike();
        break;
    case Keys.B :
        DoSomethingBLike();
        break;
    default :
        break;
}
Avatar billede snepnet Nybegynder
21. august 2004 - 13:01 #13
et svar :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester