Avatar billede Slettet bruger
21. februar 2006 - 20:32 Der er 8 kommentarer og
1 løsning

Registrering af tast

Hej eksperter!
Hvordan kan jeg med C++ registrere om brugeren trykker på en tast og hvilken?
Avatar billede arne_v Ekspert
21. februar 2006 - 20:44 #1
DOS ? Windows ? Linux ?

(standard C & C++ IO kraever retur)
Avatar billede Slettet bruger
23. februar 2006 - 15:26 #2
Windows, primært....
Men også gerne en metode, der dækker Linux.
Avatar billede arne_v Ekspert
23. februar 2006 - 15:54 #3
der er ikke en standard metode til det

det nemmeste er nok en DOS kompatibel compiler fordi den har:
  kbhit
  getch
  getche

men der er ogsaa en Win32 API funktion til det samme
Avatar billede Slettet bruger
23. februar 2006 - 17:51 #4
Nå - men hvordan gøres det i praksis?
Avatar billede arne_v Ekspert
24. februar 2006 - 21:34 #5
hvis du har en DOS compatibel compiler paa Windows saa inkluderer du conio.h
og bruger kbhit, getch, getche og putch - navnene skulle angive hvad de goer
(getch laeser uden echo, getche laser med echo)
Avatar billede rif1900 Nybegynder
26. februar 2006 - 21:47 #6
som sagt skal du bruge getch(); som sagt

du bruger den sådan her

#include <iostream>
#include <conio.h>

void main()
{
char tryk;
cout << "Du kommer ikke videre før du har trykket på en tast";

getch(); // hvis du har Ms studio 2005 kan _getch() benyttes også.

cout << "Du har trykket på en tast ellers ville dette ikke blive vist";
cout << "Tryk på A for at afslutte ";

while (tryk != 'A' || tryk != 'a');  // dette vil ignorere alle andre tast.

}
Avatar billede rif1900 Nybegynder
26. februar 2006 - 21:55 #7
ja det der var lidt pseudo kode her er lige en korrekt complilet version.

#include <iostream>
#include <conio.h>

using namespace std;

void main()
{
char tryk;
cout << "Du kommer ikke videre før du har trykket på en tast";

getch(); // hvis du har Ms studio 2005 kan _getch() benyttes også.

cout << "Du har trykket paa en tast ellers ville dette ikke blive vist";
cout << "Tryk på A for at afslutte ";
do
{
cin >> tryk;

}while (tryk != 'A' && tryk != 'a');  // dette vil ignorere alle andre tast.

}
Avatar billede Slettet bruger
11. marts 2006 - 14:24 #8
Hvad gør jeg så, hvis jeg vil tjekke om piletasterne er trykket ned?
Avatar billede Slettet bruger
01. april 2006 - 08:08 #9
Whatever...
Jeg må bare oprette et andet spørgsmål.

--- LUKKET ---
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