Avatar billede maxfli Nybegynder
15. oktober 2004 - 22:53 Der er 14 kommentarer og
1 løsning

Sluk ved keypress

Hej eksperter
Jeg har lavet et program.
Jeg kunne godt tænke mig at vide hvordan jeg fx får programmet til at lukke ned når jeg trykker "peter" på tastaturet.
Jeg mener det er inde i:
Private Sub Keypress_Click
Men hvad skal der så stå???
Avatar billede tiger_webdesign Nybegynder
15. oktober 2004 - 23:05 #1
er det ikke bare at "logge" de x sidste taster der er blevet trykket på... og hvis de giver ordet "peter" så lukke programmet?
Avatar billede maxfli Nybegynder
15. oktober 2004 - 23:17 #2
hvordan????
forklar det meget nødagtigt
Avatar billede tiger_webdesign Nybegynder
15. oktober 2004 - 23:26 #3
nødagtigt?? skulle der stå nøddeagtigt?

Så tager du to agern og fire hasselnødder...

Ej... JK... Er du på MSN?
Avatar billede maxfli Nybegynder
15. oktober 2004 - 23:41 #4
nej desværre...
Avatar billede tiger_webdesign Nybegynder
15. oktober 2004 - 23:43 #5
okay... prøver lige at fikse noget sammen til dig...
Avatar billede tiger_webdesign Nybegynder
15. oktober 2004 - 23:50 #6
Dette burde virke:

Dim logget As String
Private Sub Form_KeyPress(KeyAscii As Integer)
streng_der_skal_findes = "peter"
logget = logget & Chr(KeyAscii)
logget = Right(logget, Len(streng_der_skal_findes))
If streng_der_skal_findes = logget Then
    MsgBox ("FUNDET")
End If
End Sub
Avatar billede joern Nybegynder
16. oktober 2004 - 00:18 #7
Hej.

Jeg ville bruge text1_change()

Private Sub Text1_Change()
  If Text1.Text = "peter" Then End
End Sub

M.v.h.  Jørn
Avatar billede tiger_webdesign Nybegynder
16. oktober 2004 - 00:28 #8
problemmet er vist at han ikke skriver i noget text-field... men bare "ud i det blå"
Avatar billede joern Nybegynder
16. oktober 2004 - 00:39 #9
Hej tiger.

Det er muligt, du har ret i det.  Men VB-formen skal have focus og en eller anden kontrol har det jo så også.  Undertiden vil programmører noget ret uovervejet.
Nu må vi se når det igen bliver dag og spørgeren vender tilbage.

M.v.h. Jørn
Avatar billede sjh Nybegynder
16. oktober 2004 - 06:08 #10
Tja.. hvis det bare skal skrives ud i det blå.. så kan man jo gøre sådan..


'--------------------------------------- Form1 ---------------------------------------
Option Explicit

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Private Sub Form_Load()
  With Timer1 '<- Husk Timer1 på din Form1
      .Interval = 1
      .Enabled = True
  End With
End Sub

Private Sub Timer1_Timer()
Dim strKey As String
Dim strName As String
Static strSave As String
Static strLarstKey As String

  '------------------------------------------------------
  ' Her skriver du det navn som skal udfør din exit kode.
  '------------------------------------------------------
  strName = "Peter"
  '------------------------------------------------------

  strKey = GetPressedKey
  If strKey <> strLarstKey Then
    strLarstKey = strKey
    strSave = (Right$(strSave, Len(strName) - 1) & strLarstKey)
    If strSave = strName Then
  '------------------------------------------------------
  ' Her udfør den din exit kode.
  '------------------------------------------------------
      MsgBox "Farvel " & strName & " kom snart igen.", vbInformation
      Unload Me
  '------------------------------------------------------
    End If
  End If

End Sub

Public Function GetPressedKey() As String
Dim i As Long
  For i = 32 To 128
    If GetAsyncKeyState(i) <> 0 Then
      If GetAsyncKeyState(16) <> 0 Then ' <- 16 er SHIFT
        GetPressedKey = Chr$(i)        ' <- STORE BUGSTAVER
          Else
        GetPressedKey = LCase$(Chr$(i)) ' <- små bugstaver
      End If
      Exit For
    End If
  Next
End Function
'--------------------------------------- Form1 ---------------------------------------
Avatar billede maxfli Nybegynder
16. oktober 2004 - 08:20 #11
Desværre ingen af svarende virkede????
Avatar billede joern Nybegynder
16. oktober 2004 - 11:54 #12
Hej.

jeg bryder mig ikke om at spørgere hjemtager egne point.  Det er naturligvis i orden, hvis ingen gennemtænkte, brugbare svar er givet.  Men når 'eksperter' anstrenger sig for at søge at forstå uklare spørgsmål og komme med forslag, så bør spørgeren også præcisere sit spørgsmål og hvorfor svarene ikke kan anvendes.
Derfor har jeg kigget på andre spørgsmål som maxfli har svaret på, og der er flere andre med samme udfald.  Da Maxfli ikke er den eneste der bærer sig sådan ad, vil jeg blot lufte min misbilligelse.
Jeg mangler overhovedet ikke point og er faktisk ligeglad, men jeg synes at de som svarer, fortjener den respekt at spørgeren begrunder sin afvisning af svar.

M.v.h. Jørn
Avatar billede tiger_webdesign Nybegynder
16. oktober 2004 - 14:29 #13
Jeg er enig med Jørn... Synes det er dårlig stil fra maxfli, og jeg synes at en forklaring er på rette plads... Ellers skal vi jo til at snakke med nogle co-admins...
Avatar billede razor Nybegynder
16. oktober 2004 - 15:19 #14
maxfli, svar udbedes!

/razor (coadmin)
Avatar billede razor Nybegynder
16. oktober 2004 - 21:43 #15
maxfli er deaktiveret da han ignorerede min henvendelse. Hav en fortsat god weekend.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester