Gå til innhold

Bruk Av Delete Key i en tekst boks


Anbefalte innlegg

Skrevet

Ok.. har et problem...

 

Har laget et skriveprogram.

Det viser seg at Delete knappen ikke virker.

Hvordan får jeg den til å virke slik som alle andre steder ? (notepad...)

Videoannonse
Annonse
Skrevet

Du burde kanskje legge hele eller deler av dette programmet ut på nettet slik at vi kan eventuelt se hva som er galt. Det du når spør om er vanskelig å besvare uten mer informasjon.

Skrevet

Tror nok det bare har skjedd en liten feil i koden din. Men kansje du kan prøve dette:

Option Explicit

Dim deletenummer

Private Sub Form_Load()
deletenummer = 44 'jeg vet ikke hva deleteknappens nummer er så det må du finne ut selv
End Sub

Private Sub text1_keypress(i As Integer)

If i = deletenummer Then

   Dim tekst As String
   
   tekst = Left(Text1.Text, Len(Text1.Text) - Text1.SelStart)
   
   tekst = tekst & Right(Text1.Text, Len(Text1.Text) - Text1.SelStart - 1)
   
   Text1.Text = tekst
   
End If

End Sub

Skrevet

for å finne ut keycoden så kan ein jo berre gjere slik

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Label1 = KeyCode
End Sub

 

delete er 46

Skrevet
for å finne ut keycoden så kan ein jo berre gjere slik

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Label1 = KeyCode
End Sub

 

delete er 46

Jeg er klar over det, men det ordentlige maskinen er nede og på windows 2000 gir ikke del noe tall :hmm:

Skrevet
Delete , F1, Insert, Piltaster o.s.v. kommer bare på KeyDown og KeyUp event

Åja. Da kan vel text1_keypress-linja byttes ut med text1_KeyDown(i As Integer, Shift As Integer)

Skrevet

Ikke for å mase.. men, jeg får fortsatt ikke det 100% til...

Altså...

hvis jeg ikke merker noe tekst i notepad så sletter Delete knappen et og et tegn forran den blinkende streken.

Skrevet

bruker du en helt vanlig Textbox?? Sansynligvis IKKE, siden denne er programmert riktig inn uten at du trenger å gjøre noe somhelst, så sant du da av en eller annen merkelig grunn har satt Locked til TRUE.

 

Og bare for å gjøre dette ganske enkelt, ser at det har kommet mange "rare" forslag til åssen du kan finne ut tallkoden til delete..

 

Her har dere et par tips:

 

Når du skal sjekke en verdi (debugge som det heter på godt norsk), så er det 1000 ganger proffere og enklere og kun skrive:

Debug.print MIN_VERDI

 

så i ditt tilfelle så kunne du ha skrevet:

Private Sub TextBox1_Keydown(KeyCode as Integer, Shift as Integer)
   Debug.Print KeyCode
End Sub

 

da vil du kunne lese denne verdien i "Debug-vinduet" til VB

 

Uansett, så er det haugevis av prefixed konstanter i VB, bla en konstant som heter VBKeyDelete, så hvis du vil lage en spesiell kode når brukeren taster Delete knappen, så kan du gjøre dette på følgende måte:

Private Sub TextBox1_Keydown(KeyCode as Integer, Shift as Integer)
   If KeyCode = vbKeyDelete Then
       'Skriv inn koden for delete-knapp hendelsen her!
   End If
End Sub

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...