Seite 1 von 2

Zeitsteuerung

Verfasst: 27.11.2006 17:58
von eiban
Hallo PureBoard

ist es möglich mit PureBasic V3.9 eine Art Zeitschaltung
für den PC zu machen . D.h. wenn die Maus oder die Tastatur z.B. 2Minuten nicht
betätigt wird, dass eine bestimmte Aktion ausgeführt wird.

Ich bin dankbar für alle Antworten!

Verfasst: 27.11.2006 18:01
von Brügge
jo

Verfasst: 27.11.2006 18:14
von eiban
evtl. einen CODE ? :mrgreen:

Verfasst: 27.11.2006 18:20
von Brügge
^^ jo klar 1mom bin noch am tüfteln ^^ aber ich muss dir sagen das ist nicht die ideal-lösung...

also ich denke es gibt ne bessere

Re: Zeitsteuerung

Verfasst: 27.11.2006 18:29
von sobi
eiban hat geschrieben:Hallo PureBoard

ist es möglich mit PureBasic V3.9 eine Art Zeitschaltung
für den PC zu machen . D.h. wenn die Maus oder die Tastatur z.B. 2Minuten nicht
betätigt wird, dass eine bestimmte Aktion ausgeführt wird.
Ich bin dankbar für alle Antworten!
Mann kann doch mit delay() ein programm anhalten? - da einfach 2 Minuten einstellen, davor die Position der Maus speichern und danach vergleichen, ob sie immer noch auf der gleichen Position steht... (keine Ahnung ob das in der Praxis geht, aber ein Gedanke ist es schon mal)

Verfasst: 27.11.2006 18:30
von Brügge

Code: Alles auswählen

m1$ = FormatDate("%ii", Date()) 

Repeat
  If GetAsyncKeyState_(#VK_A) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_B) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_C) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_D) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_E) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_F) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_G) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_H) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_I) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_J) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  If GetAsyncKeyState_(#VK_K) & 1<<16:       m1$ = FormatDate("%ii", Date())         :EndIf
  ;...
     
   Delay(1000)
   
   m2$ = FormatDate("%ii", Date())
  
   m1 = Val(m1$)
   m2 = Val(m2$)
   
   If (m1+2 = m2)
   
       ;;;;hier dein code bis jetzt ist das nur das keyboard von a bis k aber es geht
       Debug "2min sind um"
   
   EndIf
Until esc = 1

Verfasst: 27.11.2006 18:34
von eiban
Danke für die Antworten.

leider erkennt mein Compiller die FormatDate() Befehle nicht.
Geht das auch anders?

Verfasst: 27.11.2006 18:37
von Brügge
hmm jo geht 1mom ich tüftel wieder... ^^

Verfasst: 27.11.2006 18:43
von Brügge

Code: Alles auswählen

s1 = 0
sec = 0
maxsec = 61 ; <----- jetzt wartet er darauf, das man 1minute und 1 Sekunde nix drückt(angabe in sekunden)
Repeat
  sec = sec +1
  If GetAsyncKeyState_(#VK_A) & 1<<16:       s1  = sec         :EndIf
  If GetAsyncKeyState_(#VK_B) & 1<<16:       s1 = sec         :EndIf
  If GetAsyncKeyState_(#VK_C) & 1<<16:       s1=sec       :EndIf
  If GetAsyncKeyState_(#VK_D) & 1<<16:       s1=sec         :EndIf
  If GetAsyncKeyState_(#VK_E) & 1<<16:       s1=sec         :EndIf
  If GetAsyncKeyState_(#VK_F) & 1<<16:       s1=sec         :EndIf
  If GetAsyncKeyState_(#VK_G) & 1<<16:       s1=sec         :EndIf
  If GetAsyncKeyState_(#VK_H) & 1<<16:       s1=sec         :EndIf
  If GetAsyncKeyState_(#VK_I) & 1<<16:       s1=sec        :EndIf
  If GetAsyncKeyState_(#VK_J) & 1<<16:       s1=sec         :EndIf
  If GetAsyncKeyState_(#VK_K) & 1<<16:       s1=sec        :EndIf
  ;...
     
   Delay(1000)
   
  
   
   If (s1+maxsec <= sec)
   
       ;;;;hier dein code bis jetzt ist das nur das keyboard von a bis k aber es geht
       Debug "eine minute ist um..."
   
   EndIf
Until esc = 1
MFG!

Verfasst: 27.11.2006 19:30
von a14xerus
ungenau :wink: