Виснет при рисовании

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

Виснет при рисовании

Сообщение Shaggy1 » 26.05.2011 (Чт) 12:09

Как победить зависание формы при выполнении кода программы?

В приложении код программы, которая расчитывает некоторый массив(в моем случае 6000 на 600) И строит по этому массиву, красивую разноцветную картиночку.
Так вот при построении, возникает некоторое подвисание... После прирывания исполнения кода(контрол+брейк) и запуска ее снова, программа дорабатывает и дорисовывает все до конца, без каких либо проблем, но с того момента на котором была перезапущена.
Вложения
zavisanie.JPG
zavisanie.JPG (31.25 Кб) Просмотров: 1140
Последний раз редактировалось Shaggy1 26.05.2011 (Чт) 13:49, всего редактировалось 2 раз(а).

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

Re: Виснет при рисовании

Сообщение Хакер » 26.05.2011 (Чт) 12:21

Shaggy1 писал(а):Так вот при построении, возникает некоторое подвисание...

Да выучите вы наконец базовые вещи, касающиеся программирования под Windows.
Во время построения не происходит никакого подвисания. Во время построения просто никто не обрабатывает очередь оконных сообщений. Поэтому окно ни на что не реагирует, что абсолютно логично и закономерно.

В стартовом сообщенииа не содержится вопроса. Темы, вообще не содержащие никаких вопросов, закрываются. Автор может легко вновь открыть эту тему, написав мне личное сообщение и пообещав исправить (переписав и сформулировав конкретные вопросы) своё сообщение после открытия.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

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

Re: Виснет при рисовании

Сообщение Хакер » 26.05.2011 (Чт) 12:38

Тема открыта.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

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

Re: Виснет при рисовании

Сообщение Хакер » 26.05.2011 (Чт) 12:42

Shaggy1 писал(а):Как победить зависание формы при выполнении кода программы?

Наблаюдаемое явление — не зависание.
Чтобы победить наблюдаемое явление, нужно не прекращать обрабатывать оконные сообщения.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Виснет при рисовании

Сообщение Debugger » 26.05.2011 (Чт) 13:09

Для этого надо в цикле поставить DoEvents.

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

Re: Виснет при рисовании

Сообщение Хакер » 26.05.2011 (Чт) 13:22

Debugger писал(а):Для этого надо в цикле поставить DoEvents.

У тебя сегодня день вредных советов?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Shaggy1
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 26.05.2011 (Чт) 11:19

Re: Виснет при рисовании

Сообщение Shaggy1 » 26.05.2011 (Чт) 13:35

Debugger писал(а):Для этого надо в цикле поставить DoEvents.

Спасибо! :)
Хакер писал(а):
Debugger писал(а):Для этого надо в цикле поставить DoEvents.

У тебя сегодня день вредных советов?

Спасибо! На данный момент, мне вполне хватит этого решения, а с остальным потом разберемся! :wink:

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

Re: Виснет при рисовании

Сообщение Хакер » 26.05.2011 (Чт) 13:46

Shaggy1 писал(а):На данный момент, мне вполне хватит этого решения, а с остальным потом разберемся! :wink:

Вот, Debugger, погляди, каков он, вредный совет, в действии. Надеюсь, понятно, что никакого «потом» не наступит?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Shaggy1
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 26.05.2011 (Чт) 11:19

Re: Виснет при рисовании

Сообщение Shaggy1 » 26.05.2011 (Чт) 13:54

Хакер писал(а):
Shaggy1 писал(а):На данный момент, мне вполне хватит этого решения, а с остальным потом разберемся! :wink:

Вот, Debugger, погляди, каков он, вредный совет, в действии. Надеюсь, понятно, что никакого «потом» не наступит?


Ну в моем случае, "потом" наступит в процессе оптимизации и доработки программы. А делать в ней еще много чего надо... А сейчас это даже программкой назвать нельзя, так программулинка :lol:

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Re: Виснет при рисовании

Сообщение SLIM » 31.05.2011 (Вт) 21:43

Shaggy1 писал(а):Ну в моем случае, "потом" наступит

Хакер прав, не наступит.
Он всегда мне говорил "пиши правильно сразу". Я до сих пор только шлифую этот навык, но так и не могу привыкнуть. А вот если бы с самого начала писал бы всегда правильно...
Пишите жизнь на чистовик.....переписать не удастся.....

Vi
Постоялец
Постоялец
 
Сообщения: 739
Зарегистрирован: 25.01.2002 (Пт) 11:03
Откуда: Россия, Ижевск

Re: Виснет при рисовании

Сообщение Vi » 01.06.2011 (Ср) 9:53

SLIM писал(а):А вот если бы с самого начала писал бы всегда правильно...

Тогда ты ничего бы не написал. :) Спросили сороконожку: "С какой ноги ты начинаешь идти?" ;)
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! (с) КВН


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 49

    TopList