|
Как уместить в Text Box больше 64 kb текста? |
|
|
Дело в том, что элемент TextBox не может показывать текст объемом больше 64 kb (а иногда это значение может сократиться до 30 kb). Но эту проблему легко решить, если подгружать необходимые куски текста в TextBox по мере надобности. Данный код загружает файл любого размера в динамический массив и в зависимости от значения Value Scrool Bar'а показывает в TextBox'e, только определенные куски текста. Для того, что бы все это работало, вам нужно поместить на форму TextBox, назвать его txtMain, установить его свойство Multiline как True, а свойство ScroolBars, как 1-Horizontal. А также рядом с TextBox'ом нарисовать вертикальный ScroolBar с именем vsbText Private Text()
Private Const LineNum = 15
Private Sub Form_Load()
Dim i
Open "D:\win32api.txt" For Input As #1 Len = 1024
Do Until EOF(1)
i = i + 1
ReDim Preserve Text(i + LineNum)
Line Input #1, Text(i)
Loop
Close #1
With vsbText
.Min = 1
.Max = i
.SmallChange = 1
.LargeChange = i \ 10
End With
End Sub
Private Sub vsbText_Change()
Dim i As Integer
Dim Temp
For i = vsbText.Value To vsbText.Value + LineNum
Temp = Temp + Text(i) + vbCrLf
Next i
txtMain.Text = Temp
End Sub
|
|
|
|
|
|
|