Abfrage ob Maus oder Taste betätigt

Für allgemeine Fragen zur Programmierung mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ich hab auch ne optische maus, und bei bei funktioniert es ausgezeichnet...

ausserdem:
wenn die maus zuckelt, ist es herzlich egal, ob man MouseDelta oder MouseX/Y benutzt,
beide werte würden abweichungen hervorbringen.

@poser

wenn du magst, fahr doch mal folgenden code und check damit mal,
welcher wert sich nicht benimmt ;)

Code: Alles auswählen

InitKeyboard()
InitMouse()
InitSprite()

OpenScreen(800,600,32,"test")

Repeat

    ExamineKeyboard()
    ExamineMouse()
    
    MDX = MouseDeltaX()
    MDY = MouseDeltaY()
    MB1 = MouseButton(1)
    MB2 = MouseButton(2)
    
    MMV = MDX Or MDY Or MB1 Or MB2
    
    ClearScreen(0,0,0)
    StartDrawing(ScreenOutput())
        DrawingMode(1)
        FrontColor(64,128,255)
        Locate(100, 60) : DrawText("MDX = " + Str(MDX))
        Locate(100, 80) : DrawText("MDY = " + Str(MDY))
        Locate(100,100) : DrawText("MB1 = " + Str(MB1))
        Locate(100,120) : DrawText("MB2 = " + Str(MB2))
        Locate(100,140) : DrawText("MMV = " + Str(MMV))
    StopDrawing()
    FlipBuffers()

Until KeyboardPushed(1)
wenn alle werte auf NULL bleiben, solange du die maus nicht anfasst,
probier den anderen code nochmal, aber starte mit tastatur, nicht mit maus.

zur not setze vor die hauptschleife der anderen code noch:

Code: Alles auswählen

ExamineKeyboard()
Delay(500)
ExamineKeyboard()
und wenn alles nicht hilft, poste bitte mal deinen kompletten code...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

oder du überprüfst stattdessen mit toleranz...
zb

MouseDeltaX()<5
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

da hast du grundsätzlich recht, Zaphod,

aber wenn die maus zuckelt, wenn man weder sie noch den tisch berührt,
nur wenn man sie scharf anguckt, dann, bei aller liebe, tu das mistding in die tonne!
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

oder stell die empfindlichkeit in den mauseinstellungen etwas niedriger ein... naja, hast aber schon recht... hatte vorher die logitech dual optical, die hat *wirklich* schon auf den puls reagiert. sowas braucht kein mensch.
Benutzeravatar
nco2k
Beiträge: 892
Registriert: 08.09.2004 23:13

Beitrag von nco2k »

@Zaphod
das lag an dem immer schlechter werdenden treiber, welcher sehr starke probleme mit der synchronisation der beiden sensoren hatte.

c ya,
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
Antworten