Изменение размера TextBox во время редактирования - VB

Узнай цену своей работы

Формулировка задачи:

Хочу сделать так, чтобы при изменении текста в TextBox свойство TextBox.Width оставалость не изменным, а TextBox.Height изменялось в зависимости от объема введенного тескта. Придумал два варианта, когда текст редактируешь работает нормально. Но когда вставляешь кусок текста из Clipboard размером более 200 000 символов - перерисовка TextBox "тормозит".
Изначально TextBox.Height=285
Первый вариант:
- размер текста в Clipboard 200 000 символов:
- задержка примерно 1 секунда.

Второй вариант (работает быстрее, но все равно "тормозит"):
- размер текста в Clipboard 200 000 символов:
- задержка примерно 0,5 секунды.

Может кто-нибудь что посоветует? Я предполагаю, что можно сделать и подругому(я в VB новичок).
Интерфес срисовываю с чужого приложения, то-же написанного на VB6, там задержки практически нет.

Решение задачи: «Изменение размера TextBox во время редактирования»

textual
Листинг программы
Private Sub Form_Load()
<br>    Me.Label1.WordWrap = True
<br>    Me.Label1.AutoSize = True
<br>    Me.Label1.Visible = False
<br><font color="blue">End</font> Sub
<br>
<br>Private Sub Text1_Change()
<br>    Call TextExtent
<br><font color="blue">End</font> Sub
<br>
<br>'>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
<br>Private Function TextExtent()
<br>    Me.Label1.Caption = Me.Text1.Text
<br>    Me.Label1.Width = Me.Text1.Width
<br>    Me.Text1.Height = Me.Label1.Height
<br><font color="blue">End</font> Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5