Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
sp1nh3ad_
Newbie
Newbie

Anmeldedatum: 14.09.2007
Beiträge: 18

KeyPress
Verfasst am: 16.09.2007, 16:31

Erstmal vorweg:
Bitte keine Kommentare wie: "Das gabs schon 100 ma etc."
Denn ich habe gesucht und mir die Sachen durchgelesen, aber irgendwie will es nicht funktionieren.

Und zwar:

Ich habe eine Checkbox und wenn da ein Haken ist, dann soll mein Programm auf einen Tastendruck achten und dann eine Aktion ausführen. Doch irgendwie klappt das einfach nicht!

Ich bin für jede Hilfe dankbar!

PS: Ich habe gestern mit VB-lernen angefangen. Wink

Der Quellcode:

[vb:1:f3d37481a2]Private Sub form1_KeyPress(KeyAscii As Integer)

If check_key.Value = 0 Then
GoTo 20

Else

If KeyAscii = 13 Then
MsgBox "Funktioniert!"
End If

End If

20
End Sub[/vb:1:f3d37481a2]





Na toll ^^ Falsche Section seh ich grade... Ich klicke irgendwie immer auf VB.Net - bitte verschieben - danke! *peinlich*


edit by r4z3r: Für Codes bitte die dafür vorgesehenen VB Tags benutzen
 
Marduk_
« Moderator »<b><font color=green>« Moderator »</font



Anmeldedatum: 17.06.2007
Beiträge: 389


Verfasst am: 16.09.2007, 18:53

Erstmal GoTo ist ganz böse, nimm dazu lieber exit sub

Also
[vb:1:33ee5e39b2]If check_key.Value = 0 Then
exit sub

ElseIf KeyAscii = 13 Then
MsgBox "Funktioniert!"

End If


End Sub [/vb:1:33ee5e39b2]

Zu deinem 2. Problem, kannst du mal hier gucken
http://www.activevb.de/rubriken/apikatalog/deklarationen/getasynckeystate.html
 
sp1nh3ad_
Newbie
Newbie

Anmeldedatum: 14.09.2007
Beiträge: 18


Verfasst am: 16.09.2007, 20:02

Vielen dank erstmal für die Antwort, aber ich habe das Problem, das ich jetzt glaub die Puzzleteile habe, aber das Puzzle nicht zusammensetzten kann.

Es wäre sehr nett, wenn einer von euch mir ein kleines Beispiel anhand eines Quellcodes geben könnte, welches dann alles korrekt funktioniert!

(Sry, aber ich bin totaler Anfänger auf diesem Gebiet) Laughing
 
Bahamut_
« Moderator »<b><font color=green>« Moderator »</font



Anmeldedatum: 12.12.2006
Beiträge: 250


Verfasst am: 17.09.2007, 12:07

[vb:1:63b02951cb]Private Sub form1_KeyPress(KeyAscii As Integer)[/vb:1:63b02951cb]

Glaub das hat nix mit Vb.Net zu tun, habs mal verschoben Wink
VB.Net-Compiler: http://www.microsoft.com/germany/express/download/default.aspx
VB.Net-eBook: http://www.galileocomputing.de/openbook/visual_basic/
 
TheCoder_
Überflieger
Überflieger



Anmeldedatum: 31.12.2006
Beiträge: 359
Wohnort: Essen


Verfasst am: 17.09.2007, 13:37

hat Folgendes geschrieben:

[vb:1:b526eb3ee4]

Private Sub form1_KeyPress(KeyAscii As Integer)

If check_key.Value = 0 Then
GoTo 20

Else

If KeyAscii = 13 Then
MsgBox "Funktioniert!"
End If

End If

20
End Sub [/vb:1:b526eb3ee4]


Du willst doch falls checkbox 1 der Hacken is auf eine taste warten oder?
Ja gut.
dann mach das doch nich so kompliziert

[vb:1:b526eb3ee4]

Private Sub form1_KeyPress(KeyAscii As Integer)

If check_key.Value = 1 Then
If KeyAscii = 13 Then
MsgBox "Funktioniert!"
End If
End If

End Sub [/vb:1:b526eb3ee4]
 
sp1nh3ad_
Newbie
Newbie

Anmeldedatum: 14.09.2007
Beiträge: 18


Verfasst am: 17.09.2007, 14:55

Fehler gefunden - bitte löschen ^^
 
The-God-of-all_
Poster
Poster

Anmeldedatum: 20.05.2007
Beiträge: 170
Wohnort: App.Path


Verfasst am: 17.09.2007, 15:28

das ist doch logisch: wenn du auf eine Taste drückst fängt das Programm an Tastendrücke zu senden. Da das Programm aber noch aktiv sein muss sendet das Programm die Tastendrücke an sich selbst, was die Funktion auslöst. Wenn die Start Taste im gesendeten String vorkommt dann wird die Funktion gestartet. Ein weiteres Problem ist das du die Texte viel zu schnell hintereinander sendest, es gibt keine Pause zwischen dem Senden. Ich würde den Text nicht mit einer Schleife senden sondern mit einem Timer von dem man den Intervall einstellen kann.

Hier mal ein Code Beispiel:
[vb:1:65d889ecad]'Es wird zusätzlich ein Timer mit dem Namen timerFlood benötigt
Private Sub Form_Keydown(KeyCode As Integer, shift As Integer)

If check_key.Value = 0 Then Exit Sub

If KeyCode <> 118 Then

timerFlood.Enabled = True

End If
End If
End Sub
Private Sub timerFlood_Timer()

Dim anzahl As Integer
Static i As Integer
anzahl = int( txt_anzahl.Text)
i = i + 1

SendKeys (txt_eingabe.Text)
SendKeys ("{enter}")
If i >= anzahl Then timerFlood.Enabled = False
End Sub[/vb:1:65d889ecad]
 
sp1nh3ad_
Newbie
Newbie

Anmeldedatum: 14.09.2007
Beiträge: 18


Verfasst am: 17.09.2007, 15:38

Ok. Jetzt habe ich noch eine letzte Frage! ^^

Die Funktion mit der Taste funktioniert zwar perfekt, jedoch geht es nur wenn der Fokus auf dem Programm liegt!

Wie mache ich es , damit ich auch flooden kann, wenn ich z.B. auf einen Chat klicke und eine Taste drücke?
 
The-God-of-all_
Poster
Poster

Anmeldedatum: 20.05.2007
Beiträge: 170
Wohnort: App.Path


Verfasst am: 17.09.2007, 15:45

Dann musst du einen Hot Key registrieren weil das Programm normalerweise nur auf Tast reagieren kann die während es aktiv ist gedrückt werden. Hot Keys werden System weit abgefangen.

Hier findest du ein Beispiel dazu.
 
sp1nh3ad_
Newbie
Newbie

Anmeldedatum: 14.09.2007
Beiträge: 18


Verfasst am: 17.09.2007, 16:48


Ok ich habe es geschafftm, das auf der Taste F8 z.b. msgbox "Rofl" ausgeführt wird.
Aber jetzt wollte ich den sub -> Flooding <- darüber starten und er sagt er würde es nicht finden. Wie kann ich auf die Form1 auf den Sub Flooding zugreifen und den ausführen?

+ weiterhin die Bedingung, die Checkbox an sein muss


( es ist in einem Modul )

-> Hat sich erledigt -> kann alles geclosed werden
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: keypress, tastendruck, msgbox, keyascii, then, ausführen

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge [gelöst] String in Integer umwandeln klappt nicht (XML, ASP) 573 06.11.2011, 22:12
Keine neuen Beiträge Ogame Login klappt nicht 1922 12.02.2008, 16:36
Keine neuen Beiträge hilfe bei ini maker 709 30.04.2007, 22:26
Keine neuen Beiträge [VB] suche hilfe beim 1. projekt 858 02.04.2007, 01:39
Keine neuen Beiträge proxy checker hilfe 1015 30.03.2007, 10:21
 


[ Time: 0.0905s ][ Queries: 107 (0.0443s) ][ GZIP on - Debug on ]