Не работает form1.print

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
BazaroffAM
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 31.05.2013 (Пт) 19:18

Не работает form1.print

Сообщение BazaroffAM » 16.06.2013 (Вс) 19:22

Изучаю пример из учебника.
(Заранее прошу прощения за незнание кашерной терминологии)) - я только пытаюсь стать начинающим!)))
В целом программка функционирует. Кроме некоторых пунктов form_load
Код: Выделить всё
Form1.Caption = "Я - не вирус!"
Form1.Print "****************************"
Form1.Print "Ты запустил классную программу!"
Form1.Print "Только я ничерта делать не умею!"
Form1.Print "Зато я и вреда не приношу!"


Не отображается на форме текст form1.print. Ни один из них!
Form1.caption работает нормально.

После выполнения некоторой процедуры, по задумке автора, на форме должен отобразиться другой текст.
Синтаксис кода тот же, что и в form_load, но это уже работает!
Подскажите в чем дело плиз!)

hclubmk
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 240
Зарегистрирован: 19.06.2009 (Пт) 14:23
Откуда: От-туда

Re: Не работает form1.print

Сообщение hclubmk » 16.06.2013 (Вс) 19:48

Form1.AutoRedraw = True
Научились ли Вы радоваться трудностям?

BazaroffAM
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 31.05.2013 (Пт) 19:18

Re: Не работает form1.print

Сообщение BazaroffAM » 16.06.2013 (Вс) 19:51

Большое спасибо! Сработало!
Только очень странно...
Мне уже ранее попадались примеры с form1.print, но без

Код: Выделить всё
Form1.Autoredraw = True


и все прекрасно работало!
Да и почему автор так лоханулся?
Объясните пожалуйста!)
И что это за ... (наверное свойство?) Autoredraw?

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 16.06.2013 (Вс) 22:39

Если кратко, то это автоматическая перерисовка после стирания. Т. е. если оно не установлено, то ничего нарисованное не будет восстановлено, если форму свернуть и развернуть, либо (частично) перекрыть другим окном. Поскольку форма становится видимой после завершения Form_Load, то всё нарисованное в нём не появляется без AutoRedraw = True.

BazaroffAM
Новичок
Новичок
 
Сообщения: 46
Зарегистрирован: 31.05.2013 (Пт) 19:18

Re: Не работает form1.print

Сообщение BazaroffAM » 16.06.2013 (Вс) 23:20

О как!
Спасибо!

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Re: Не работает form1.print

Сообщение Mikle » 17.06.2013 (Пн) 13:22

BazaroffAM писал(а):О как!
Спасибо!

Вставь в Form_Load перед печатью строку Me.Show, заработает. А ещё могло работать без AutoRedraw = True, если настройки AutoRedraw были сделаны в редакторе формы.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 17.06.2013 (Пн) 14:01

В любом случае, когда есть рисование не в обработчике Paint, перерисовку стоит включать. Ну кроме некоторых исключений (пришло в голову рисование фейерверка с изменениями по таймеру с небольшим интервалом или вообще в цикле с DoEvents).


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

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

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

    TopList