Eli miten tuon kohtalaisen rasittavan äänimerkin saa poistettua? Äänimerkki kuuluu aina kun painetaan Enteriä textboxin ollessa aktiivinen.
(Koodin lisäksi formille tarvitaan textbox objecti: Text1)
Private Sub Form_Load() Me.KeyPreview = True End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyReturn Then Text1.Text = "Painoit Enteriä" End If End Sub
ensisilmäykseltä näyttäisi että tuossa on Form_KeyDown eikös sen pitäisi olla Text1_KeyDown ja sit kun muutat ton vbKeyReturn luvuksi 13 niin pitäisi toimia
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = 13 Then Text1.Text = "Painoit Enteriä" End If End Sub
Edit: joo mut blingistä en tiedä
Juu ei lähteny blingbling äänet. Muuten kyllä toimii.
Veikkaan bling-äänen johtuvan siitä, että Enterin painalluksen tulisi lisätä rivivaihto, mutta Textboxin multiline-ominaisuus on False, joten uutta rivivaihtoa ei voi lisätä. Ongelma korjaantuu muuttamalla Textboxin multiline Trueksi.
Äänen saa pois tällä koodilla:
Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then KeyAscii = 0 End Sub
Tämä koodi huijaa, että ei olisikaan painettu Enteriä.
Perustuen Antti Laaksosen hienoon ideaan
Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then KeyAscii = 0 Text1.Text = "Painettiin enteriä" End If End Sub
Eli huijataan että enteriä ei painettukkaan mutta silti enteriä voi käyttää normaalisti
Aivan loistava idea!! Suur-kiitokset.
Ei mitää hyvä että auttoi... :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.