Ultra Phonic 2 (Ex-Member)
Pro
Messaggi: 181
Iscritto: 15/09/2008
|
ciao a tutti,
ho una text box multiline, invisibile, con 20 scritte, e vorrei che quando si scriva una di queste 20 parole su un altra text, cliccando un btn, mi dica se la parola è corretta, se c'è elencata nella text1, non corretta, se la parola digitata, non è scritta sulla text...
grazie
p.s.
se non si puo fare con la text, posso provare con un cbo, o con una list...
|
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
non ho capito bene cosa devi fare, il post che hai scritto è un pò confusonario...
|
|
Ultra Phonic 2 (Ex-Member)
Pro
Messaggi: 181
Iscritto: 15/09/2008
|
allora...
ho una text, multiline, invisibile...
e dentro ci sono scritti 20 nomiin questo modo:
Codice sorgente - presumibilmente Plain Text |
ho un altra text,
e un btn...
vorrei che se si scxrive dentro la text2, un nome presente nella text1, cliccando il btn, mi apra un form "frm2", se invece il nome non è inserito, mi apra un altro form"frm3"
se nn hai ancora capito, dimmi cosa non capisci, che te lo dirò...
|
|
P4p3r0g4 (Member)
Guru
Messaggi: 1319
Iscritto: 29/12/2006
|
penso che Grg volesse sapere cosa delle cose che hai elencato non sai fare.
|
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Allora aggiungi una listbox(list1), una textbox(text1) e un command(command1). Ti ho fatto una funzione e un esempio per richiamarla:
Codice sorgente - presumibilmente VB.NET |
Private Sub Command1_Click() MsgBox controllo(Text1.Text, List1) End Sub Private Function controllo(ByVal testo As String, lista As ListBox) Dim parole() As String, x As Integer, l As Integer If lista.ListCount = 0 Then Exit Function End If parole = Split(testo, " ") For x = 0 To UBound(parole()) For l = 0 To lista.ListCount - 1 If parole(x) = lista.List(l) Then controllo = parole(x) Exit Function End If DoEvents Next l DoEvents Next x controllo = "" End Function
|
La funzione controllo restituisce la parola trovata, altrimenti se non la trova è vuoto.
Però se per esempio nella list1 c'è "asd" e tu in text1 scrivi:
ciao asd cm stai?
allora asd lo trova, ma se si mette:
ciao asdasd come stai?
non lo trova, perchè intorno alla parola ci devono essere spazi...
Prova tu per capire, se hai problemi o non ho capito ciò che vuoi fare dimmelo.
|
|
Ultra Phonic 2 (Ex-Member)
Pro
Messaggi: 181
Iscritto: 15/09/2008
|
Grg
va bene così, solo che non ho capito dove inserire 'l'if ke mi apra rispettivamente form2 o form 3
P.S
come posso disabilitare un tasto sulla tastiera?
cioè se si clicca spazio lui lo disabilita?
e se si clicca per esempio lo ZERO?
però di zeri nella tastiera c'è ne sono 2, quindi entrambe.
P.S. 2
ogni volta ke si clikka zero o spazio, mi manda un suono cm quello di avviso...
Ultima modifica effettuata da Ultra Phonic 2 il 07/11/2008 alle 14:34 |
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
Allora la funzione controllo restituisce la stringa dove ha trovato la parola, in caso non la trova restituisce una strina vuota, quindi basta fare:
if controllo(tuoi parametri) = "" then
msgbox "Non ha trovato niente"
else
msgbox "Ha trovato la parola"
end if
capito?
Per il secondo problema se vuoi ke venga visto dal progr quando un utente preme per es. zero dipende...
Se vuoi che intercetti il tasto premuto solo quando scrivi nella textbox allora devi andare alla sub text1_keydown(ecc...) e metti:
if keycode = vbkey0 then
'Quello ke vuoi quando viene premuto 0
end if
Se invece vuoi ke il tasto venga intercettato anche se si preme x es. su un blocconote o così in generale sul desktop o da qualunque altra parte devi usare l'API: GetAsynKey (mi pare si kiami così...)
|
|
Ultra Phonic 2 (Ex-Member)
Pro
Messaggi: 181
Iscritto: 15/09/2008
|
Grazie grg
6 GRANDE!!!!!!!!
cmq, nn ho capito la parola "quello ke vuoi tu"
puoi spiegarti un pizzico, meglio...
|
|
GrG (Member)
Guru^2
Messaggi: 3430
Iscritto: 21/08/2007
|
if keycode = vbkey0 then
'Quello ke vuoi quando viene premuto 0
end if
Se intendevi questo al posto del commento devi mettere il codice che emtte il suono...
|
|