PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : VisualBasic tastendruck mit timer simulieren


Schoof
2004-06-23, 11:34:31
hallo ich kenn mich nicht so viel mit visualbasic aus, hatte es mal vor 2 jahren in der schule mehr net. nun ich möchte ein programm was alle zb 70sec alt+tab 1sec später 1 und dann wieder alt+tab drückt und das dann solange wie das programm läuft, im hintergrund natürlich. fragt mich bitte nicht wieso für was usw :) es soll halt zwischen 2 fenstern alle 70sec hin und her switchen und im 2 fenster die 1 drücken. ich habe diese seite gefunden http://www.shadoware.de/vb/sendkeys.html wo man kurz erklärt wie der befehl für tastendruck ist. nun fehlt mir der timer, natürlich am besten einen sekunden timer. kann mir da jemand wenns schnell geht sowas schreiben und hier posten oder den sekunden timer wenigstens??
vielen dank schon mal

Gast
2004-06-23, 11:38:13
Warum was schreiben, was es schon gibt?

Zieh einfach das Timersteuerelement (die kleine Stoppuhr) auf dein Formular. Dann brauchst du das nur noch doppelt zu klicken und schon kannst du sagen, was passieren soll, wenn der Timerevent ausgelöst wird. Das Intervall stellst du einfach über die Eigenschaft Interval (Millisekunden) ein.

Schoof
2004-06-23, 12:31:30
also ich habs mir so vorgestellt: eine exe die ich stare und mit nem start button das programm starte. nun soll nach 70sec alt+tab gedrückt werden, dann nach 1 sec 1, dann nach 1 sec wieder alt+tab. und das soll sich dann wieder hollen. geht das mit dieser uhr auch?

Gast
2004-06-23, 15:15:12
Also ich hab das hier mal sehr ausführlich aufgeschrieben:


Private Sub Timer1_Timer()

' wir merken uns die Sekunden statisch
Static gemerkteSekunden As Long
' dann brauchen wir noch eine Zustandsüberwachung
Static Zustand As Integer

If Zustand = 0 Then ' das soll mal die 70 Sekunden Schleife sein
' schon 70 Sekunden seit letztem Aufruf vergangen?
If gemerkteSekunden < Timer - 70 Then
' dann aktuelle Sekunden merken
gemerkteSekunden = Timer
' drücke Alt-Tab
SendKeys "%{TAB}"
Zustand = 1 ' als nächstes wird die 1 gedrückt
End If
Else
If Zustand = 1 Then ' die 1 drücken
SendKeys "1"
Zustand = 2 ' als nächstes wird wieder Alt-Tab gedrückt
Else
If Zustand = 2 Then ' Alt-Tab drücken
SendKeys "%{TAB}"
Zustand = 0 ' wieder 70 Sekunden warten
End If
End If
End If

' Nachrichtenschleife abarbeiten
DoEvents

End Sub


Dann musst du nur noch in das Intervall 1000 schreiben (1000ms=1sek).

Schoof
2004-06-24, 07:39:57
mei du bist ein schatz :). aber funtzt das so wenn ich es in visual basic rein kopiere? muss ich da noch ne grosse schleife machen oder fängt der oben wieder an wenn unten der zustand auf 0 gesetzt wurde? und diesen intervall wo muss ich den den rein schreiben. und ich hätte noch gern zwischen alt+tab ,1sec warten, 1 ,1sec warten, alt+tab. also wenn du geil zb so nett wärst mir ganz ganze progi zu schreiben :liebkuck: bzw noch paar tips gibst?

Schoof
2004-06-25, 13:27:58
hab zwar oben genannten code noch nicht abgetipt da ich noch nicht zuhause bin, aber funtzt es so wie es da steht? bzw kann mir ein hobby oder prof programmierer vieleicht so ein progie tipen wenn es ein nicht zu grosser aufwand wäre??

Gast
2004-06-25, 15:00:52
Der Quelltext da oben ist schon das ganze Programm! Aber ein Projekt erstellen, einen Button und einen Timer auf das Formular ziehen und den Quelltext von oben hinein kopieren, solltest du schon selber können.

Und selbstverständlich läuft das Programm.

Schoof
2004-06-25, 18:45:44
big thx, bin heim programmiert bzw kopiert, und alles funtzt. echt super. bist ein schatz :)