Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Dividere i dati di un textbox in tre text box
Forum - Visual Basic 6 - Dividere i dati di un textbox in tre text box

Avatar
queen_live78 (Normal User)
Newbie


Messaggi: 10
Iscritto: 12/10/2006

Segnala al moderatore
Postato alle 10:48
Venerdì, 20/07/2007
Salve ragazzi cerco di spiegare in breve qual'è il mio problema , ho realizzato un piccolo programma che permette di monitorare la rete lan !!! ho fatto un client ed un server !!! quando il client si connette al server tramite il controllo winsock , al server viene inviata un stringa contenente hostname , indirizzo IP , e utente loggato nella macchina ( Client ) fin qui nessun problema a parte che la stringa che ricevo sul server e' in un unica textbox , ricevo una stringa del genere:
CDC2007    192.168.2.222   PIPPO

in un unica stringa io vorrei dividere in tre textbox questa stringa ma non so come fare !!!!


vorrei tipo : text1.text = CDC2007

text2.text= 192.168.2.222 e cosi via' come posso fare ??? ho provato inviando dei separatori tra un dato e l'altro

mettendo una stringa del genere


Codice:
msg = HostName#IndirizzoIP#UtenteLoggato

dove uso il cancelleto come separatore

Option Explicit
Dim msg As String
Dim s() As String
Dim i As Integer

dove s() è una stringa di tipo Array che utilizzerò per lo Split().

Private Sub Form_Load()
    i = 0
    msg = "HostName#IndirizzoIP#UtenteLoggato"
    s = Split(msg, "#")
    For i = 0 To UBound(s)
        lblSplit.Caption = lblSplit.Caption & s(i) & vbCrLf
    Next
End Sub

Utilizzando la sintassi


Codice:
Split(msg, carattere di riferimento)

otterrò in output sulla Label

HostName
IndirizzoIP
UtenteLoggato

ma se invece di una label volessi utilizzare 3 textbox differenti ??


questo mi serve perche poi assocero' in futuro i vari textbox ad un DB mi sapete aiutare ??


PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 11:06
Venerdì, 20/07/2007
crea un po di text (quante te ne servono per i messaggi) facenti parte di una matrice e poi sostituisci
lblSplit.Caption = lblSplit.Caption & s(i) & vbCrLf
con
text(i).text = s(i)

PM Quote
Avatar
queen_live78 (Normal User)
Newbie


Messaggi: 10
Iscritto: 12/10/2006

Segnala al moderatore
Postato alle 11:45
Venerdì, 20/07/2007
ho provato ma mi da un erroe dicendomi prevista matrice senti un po , io vorrei risolvere il problema , in pratica !!! tutti i pc che si collegano al server mi devo comparire incolonnati bene , percio' magari sarebbe meglio una griglia !!! no ??? potrei usare msflexgrid e se si come potrei dividere sempre quella stringa unica in tre colonne dentro la griglia ???';)

PM Quote
Avatar
AntoMEtal (Normal User)
Rookie


Messaggi: 22
Iscritto: 04/07/2007

Segnala al moderatore
Postato alle 13:27
Venerdì, 20/07/2007
nn so come usare le griglie, ma posso risolverti il problema con le textbox:

per creare una matrice di textbox
crei prima una textbox,
fai copia incolla di questa textbox
ti appare un messaggio che tichiede se vuoi creare una matrice di controllo, click su si
ti crei quante textbox ti servono (che sono 3)
a questo punto hai 3 textbox con lo stesso nome ma indice diverso
es:  text1(0)   text1(1)   text1(2)

adesso apllichi il codice che ti ha suggerito di paperoga

ps: puoi creare matrici di qualsiesi oggeto e componente

PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 13:56
Venerdì, 20/07/2007
bastava cambiare l'index...
comunque se devi incolonnarli forse è meglio una listbox

PM Quote