Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » GNU/Linux » Tastendruck (keypressed)

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
10.02.2003, 13:30 Uhr
NixWisser



Hallo zusammen !

Bevor ich gleich "verhauen" werde :
Ich habe die "Suchfunktion" des Forum benutzt, aber nichts gefunden.
Ich habe auch getestet, probiert, Tutorial gelesen ....
Aber ich bin wohl zu blöde folgendes Problem zu lösen:

while (Es_wurde_keine_Taste_betätigt){
mache_dieses_und_jenes;
und_auch_das;
frage_taste_ab;
}

Taste_wurde_betätigt ...

Also möchte ich eine Schleife solange laufen lassen bis irgendeine Taste betätigt wird. Habe es schon versucht mit getch usw, doch diese verlangen
immer einen Tastendruck, machen also nicht weiter :-(

Wie würdet ihr Profis so etwas lösen, ich krieg es nicht auf die Reihe ?!
Dankeschön für jeden Tip!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
10.02.2003, 13:47 Uhr
~gast
Gast


kbhit() sollte dein Problem lösen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
10.02.2003, 21:52 Uhr
NixWisser



Danke für die schnelle Antwort !

Sofort ausprobiert und wieder mal daneben. Ist wohl doch nicht ganz so einfach, jedenfalls nicht unter Linux8.0 mit gcc . Was ich bisher herausgefunden habe ist,
das kbhit() conio.h erfordert, welche wohl nicht zu Standartinstallation gehört.
Also ab ins Internet, gesucht und gefunden. Doch bei der Installation dieser wieder einmal "echtes Multitasking" erlebt : 32 Fehler gleichzeitig ;-)
Gibt es denn nichts was einfach mal so klappt ?

Trotzdem vielen Dank !
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
11.02.2003, 07:39 Uhr
virtual
Sexiest Bit alive
(Operator)


Ich hatte ein wenig gewartet, denn eigentlich ist Deine Frage keine C, sondern eine Betriebssystemspezifische Frage. Und da Du jetzt sagst, daß Du Linux verwendest, kann Dir sogar geholfen werden. Guck dir mal die Funktion getch aus der ncurses Library an, die macht sowas, allerdings unbedingt man-page lesen!
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
11.02.2003, 09:20 Uhr
NixWisser



Danke für die klärenden Worte. Und ich dachte so etwas würde man betriebssystemunspezifisch mit Ansi-C hinbekommen, daher auch mein Posting unter "C", sorry. Aber gut, werde nun mal nach der ncurses Library suchen.

.. mein Benutzername passt schon irgendwie, oder ;-)

Thx, NixWisser
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
11.02.2003, 12:08 Uhr
~0xdeadbeef
Gast


Es gibt kein "Linux 8.0", der Kernel steht im Moment bei 2.4.20. Die 8.0 ist die Versionsnummer deiner Distribution.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
11.02.2003, 13:38 Uhr
~NixWisser
Gast


Ist ja toll, das hilft mir weiter. Was nützt mir die f*** Versionsnummer
wenn nix klappt?!
Ob Kernel 08.15 oder James Bond 007 ist mir wurscht!
Ausserdem gibt es Linux8.0 : SuSe Linux 8.0 !
Wer das nicht weiss ist selbst schuld. Basta!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
11.02.2003, 14:18 Uhr
virtual
Sexiest Bit alive
(Operator)



Zitat:
~NixWisser postete
Ist ja toll, das hilft mir weiter. Was nützt mir die f*** Versionsnummer
wenn nix klappt?!
Ob Kernel 08.15 oder James Bond 007 ist mir wurscht!
Ausserdem gibt es Linux8.0 : SuSe Linux 8.0 !
Wer das nicht weiss ist selbst schuld. Basta!



Tja. Dann kann man Dir schwer helfen, sobald du in Probleme reinläufst, die nichts mit dem einfachen Auffinden von Routinen, sondern mit Laufzeitproblemen zu tun haben. Ich würde Beefies Hinweis nicht einfach ignorieren.
Übrigens bekommst Du ziemlich einfach raus, welches Linux (aka Kernelversion) du hast, indem Du einfach in der Shell ein

Code:
uname -sr


Eingibst.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
11.02.2003, 14:38 Uhr
~NixWisser
Gast


Da hast du bestimmt Recht, werde mal schauen.
Hätte nicht gedacht das so schwer ist. Also nix mit "Standart-C" unter Linux?!
Muss man nun immer vor dem Programmieren (oder dem Versuch zu Programmieren) seine Kernel-Version prüfen? Bei x.3.z geht dies und bei x.4.y geht jenes nicht? Egal, wird schon noch hinhauen ...

Danke an alle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
11.02.2003, 14:45 Uhr
virtual
Sexiest Bit alive
(Operator)


Mit dem ncurses Kram hast Du eh schon Standard C verlassen... Der Standard deckt nur den kleinsten Gemeinsamen Nenner ab. Dass etwas unter x.3.z tut, aber nicht unter x.4.y, das kann zwar vorkommen, wahrscheinlicher ist aber, da´ß etwas unter x.4.y tut, dafür aber nicht unter x.3.z . Und wenn Du Programme unter "Linux 8.0" schreibst, ich aber nur ein Mickriges "Linux 2.4.19" nutze, dann wird die Kommunikation nicht grade einfacher, wie Du dir denken kannst
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ GNU/Linux ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: