ресайз формы

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

ресайз формы

Сообщение Watts[]n! » 04.05.2007 (Пт) 0:17

Здравствуйте! Помогите мне, plz!

У меня на форме Frame, в нём TextBox. Он из кода заполняется текстом
(ок. 4 кб). После этого при ресайз формы начинает дико тормозить
(Как бы поступенчато). Как избежать этого?

P.S. Комп у меня НЕ старый.

Заранее Спасибо!!!

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 04.05.2007 (Пт) 7:12

И каким же кодом производится ресайз?
Весь мир матрица, а мы в нем потоки байтов!

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 04.05.2007 (Пт) 7:20

Прямо - никак

Это проблема винды.

См. тот же блокнот.


А вот косвенно решить проблему МОЖНО.

зы. нравится смотреть сообщения оформленный таким-вот стилем?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

Сообщение Watts[]n! » 05.05.2007 (Сб) 0:22

Ресайз производится так:
От Height и Width формы отнимаю определенное число (равное расстоянию от краев textBox'a до края формы) и присваиваю полученное значение textBox'у.

зы. нравится смотреть сообщения оформленный таким-вот стилем?


А что такого?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 05.05.2007 (Сб) 0:28

Watts[]n! писал(а):Ресайз производится так:
От Height и Width формы отнимаю определенное число (равное расстоянию от краев textBox'a до края формы)


А надо от ScaleHeight, ScaleWidth.

Watts[]n! писал(а): и присваиваю полученное значение textBox'у.


TextBox-у? :lol: может быть его свойствам Width и Height ? :)
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

Сообщение Watts[]n! » 05.05.2007 (Сб) 0:37

Вот полный код. Эти числа подбирал методом околонаучного тыка, но работает все стабильно (тормозит только).

Private Sub Form_Resize()
On Error GoTo ErrHandler

T1.Height = Me.ScaleHeight - 570
T1.Width = Me.Width - 3600

ErrHandler:
Exit Sub
End Sub

TextBox-у? может быть его свойствам Width и Height ?

Я это и хотел сказать, просто сократить решил :D

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 05.05.2007 (Сб) 0:39

Watts[]n!
Убери метод тыка - юзай ScaleWidth - 2*Obj.Left
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

Сообщение Watts[]n! » 05.05.2007 (Сб) 11:37

Как это я раньше не додумался :)
Обязательно попробую!

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 05.05.2007 (Сб) 12:30

Watts[]n!, кстати говоря, это только здесь опечатка или и в коде у тебя ExitSub стоит после метки ErrHandler?...
Salus populi suprema lex

Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

Сообщение Watts[]n! » 05.05.2007 (Сб) 22:43

dr.MIG писал(а):Watts[]n!, кстати говоря, это только здесь опечатка или и в коде у тебя ExitSub стоит после метки ErrHandler?...


Да, в обработчике ошибок стоит Exit Sub. А что здесь не так?

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 06.05.2007 (Вс) 8:48

Просто при таком коде процедура обработка ошибки происходит независимо от того была ошибка или нет, но т.к. там ExitSub, то ничего страшного не происходит. Т.е. ExitSub должно быть и перед меткой ErrHandler. (Хотя в этом случае это в общем-то неважно)
Salus populi suprema lex

Watts[]n!
Постоялец
Постоялец
 
Сообщения: 573
Зарегистрирован: 11.02.2007 (Вс) 0:19

Сообщение Watts[]n! » 07.05.2007 (Пн) 12:25

Понятно.
Хотя я для таких целей чаще всего использую On Error Resume Next :lol:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 46

    TopList