Avatar billede ziout Nybegynder
28. april 2003 - 16:54 Der er 3 kommentarer og
1 løsning

Fange keyboard input i windows consol

Hej alle eksperter derude..

Jeg har flg. problem:
Hvordan kan jeg fange tastekombinationen:
 
        alt + "andet bogstav el. tal"

i microsoft visual c++ consol.
Skal jeg bruge noget med scan coder eller hvad??

Håber i kan hjælpe..
Avatar billede driis Nybegynder
28. april 2003 - 17:14 #1
Kig på funktionen GetAsyncKeyState, slå den evt. op i MSDN Library. Eksempel:

#include <iostream>
#include <windows.h>

using namespace std ;

int main()
{
    cout << "Tryk ALT-A ..." ;

    while ( ! ( GetAsyncKeyState(VK_MENU) & 0x8000 &&
        GetAsyncKeyState('A') & 0x8000 ) ) ;

    cout << "\nDu trykkede ALT-A !" ;

    return 0 ;
}
Avatar billede soreno Praktikant
28. april 2003 - 17:14 #2
Avatar billede soreno Praktikant
28. april 2003 - 17:20 #3
driis:
Hvorfor and'er du med 0x8000 - er det et tricks for at kunne fange både 'a' og 'A' ?
Avatar billede driis Nybegynder
28. april 2003 - 17:57 #4
Nej, det er fordi GetAsyncKeyState returnerer en short værdi med MSB sat, hvis tasten er trykket ned - og den returnerer ikke nødvendigvis 0, hvis tasten ikke er nede. ( og 1000 0000 0000 0000 = 0x8000 )
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
Kurser inden for grundlæggende programmering

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