Oppure

Loading
28/06/08 17:39
alceus
Ciao, in una form ho un CommandButton e due TextBox di cui Text1 con proprietà Multiline impostata a True e Text2 con proprietà Multiline impostata a False.
È possibile traspostare soltanto la prima riga della Text1 nella Text2 cliccando sul CommandButton?
Grazie in anticipo
aaa
28/06/08 17:58
GrG
Private Sub Command1_Click()
Dim i As Integer
i = InStr(1, Text1.Text, vbCrLf)
If i > 0 Then
Text1.SelStart = 0
Text1.SelLength = i - 1
Text2.Text = Text1.SelText
End If
End Sub


:k:
aaa
29/06/08 14:15
alceus
Ok grazie!:k:
Un'ultima cosa: con il codice che hai postato tu, semplicemente copio la prima riga. Esiste un modo per cancellarla dal text1 una volta copiata nella text2?
aaa
29/06/08 14:38
antometal
Private Sub Command1_Click()
Dim i As Integer
i = InStr(1, Text1.Text, vbCrLf)
If i > 0 Then
Text1.SelStart = 0
Text1.SelLength = i - 1
Text2.Text = Text1.SelText
[b]Text1.SelText=""[/b]
End If
End Sub 
aaa
29/06/08 14:44
alceus
Ok, grazie antolmetal
aaa
29/06/08 14:49
alceus
L'unico inconveniente è che essendo il Text1 con proprietà Multiline impostata a True, facendo Text1.SelStart="" resta poi una riga vuota al posto della riga eliminata. È possibile rimuoverla?
aaa
29/06/08 16:47
GrG
Non penso sia la cosa + giusta cmq prova con un sendkeys:
Private Sub Command1_Click()
Dim i As Integer
i = InStr(1, Text1.Text, vbCrLf)
If i > 0 Then
Text1.SelStart = 0
Text1.SelLength = i - 1
Text2.Text = Text1.SelText
Text1.SelText = ""
Text1.SetFocus
SendKeys "{DELETE}"
End If
End Sub
aaa
29/06/08 18:15
antometal
puoi usare 3 metodi

1. dopo aver trasferito la prima riga, aumenti il sellenght di 2 e poi cancelli il seltext come ti ho mostrato prima
text1.sellenght=text1.sellenght+2
text1.seltext=""


2. fai si che nella textbox ci sia tt il testo tranne i primi 2 caratteri
text1.text=right(text1.text,2)


3. cambi il codice per prelevare la prima riga
dim righe() as string
righe=split(text1.text,vbrclf)
text2.text=righe(0)
text1.text=""
    for i=1 to ubound(righe)
        text1.text=text1.text & righe(i) & vbcrlf
    next i
aaa