Seite 2 von 2

Verfasst: 02.02.2005 14:28
von brotkasten-deluxe
Danilo hat geschrieben:

Code: Alles auswählen

If InitKeyboard()=0
  MessageRequester("Error","Cant initialize keyboard functions !"):End
EndIf

DisableDebugger ; disable debugger error checks for keyboard

Repeat
  Delay(10) ; CPU-Idle 10ms

  ; do something
  Beep_(800,20)

  ExamineKeyboard()
Until KeyboardPushed(#PB_KEY_ESCAPE)
Is jetzt Delay der Trick oder wie seh ich das?

Verfasst: 02.02.2005 14:54
von Danilo
Ja. Sonst läuft die Schleife ununterbrochen -> 100% CPU-Last.

Verfasst: 02.02.2005 15:08
von Andre
Danilo hat geschrieben:
GPI hat geschrieben:Sollte man die Keyboad-Commandos nicht erst nutzen, wenn ein Screen geöffnet wird?
Laut Fred/Debugger: Ja
Laut DirectX: Nein

DirectInput ist in DX eine eigenständige Komponente. Kannst
Du auch ohne Screen verwenden, z.B. Joystick/pad -> Robotersteuerung
oder auch mit einem einfachen Fenster... und natürlich OpenGL.
Habe noch eine weitergehende Info von Fred dazu:

Dass die Tastaturabfrage per DirextX auch ohne Screen möglich ist, ist ihm schon bekannt. Daher funktionierte dies bisher ja auch mit deaktiviertem Debugger und sollte (unter Windows) auch zukünftig gehen.

Um eine plattformübergreifende Kompatibilität zu gewährleisten, ist in PureBasic (offiziell) jedoch Keyboard stets mit Screen verknüpft, da dies auf anderen OS ebenso der Fall ist.

(hoffe, meine Übersetzung gibt dies korrekt wieder)