Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Подскажите! Добавлено: 23.07.04 08:48  

Автор вопроса:  Mufasa | Web-сайт: webpricols.narod.ru
Вот тут я прогу новую делаю, и хотел, что бы как в ВинАмпе5, такая весчь снизу выдвигалась(настройки там типа). Вот, подскажите как эту байду сделать, что бы ничё не моргало, а плавно выдвигалось.

Ответить

  Ответы Всего ответов: 17  

Номер ответа: 1
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #1
Добавлено: 23.07.04 10:32
циклами ;)

Ответить

Номер ответа: 2
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #2 Добавлено: 23.07.04 10:35
Циклами глюкаво...

Засунь вот это в таймер

Timer1.Interval = 1
Me.Height = Me.Height + 25
If Me.Height > 6000 Then Timer1.Enabled = False

Ответить

Номер ответа: 3
Автор ответа:
 Добрый волшебник



Вопросов: 1
Ответов: 6
 Профиль | | #3 Добавлено: 23.07.04 14:01
2: dNW
Да точно, таймер рулит и мне кажется (хотя я могу и ошибаться, если это так, то прошу меня поправить) что в 98-й виде интервал=1 будет работать не так как мы на это надеемся. Предпочтительней ставитьинтервал не менее 40 мс. Если поставить 1 мс то ИМХО он будет работать неравномерно, а в 2000 и ХР гораздо быстрее.

Ответить

Номер ответа: 4
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #4
Добавлено: 23.07.04 14:02
Значит циклами с DoEvents и Sleep(0&;)... Вот таймер, это как раз есть дурной тон!

Ответить

Номер ответа: 5
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #5 Добавлено: 23.07.04 15:25
2Добрый волшебник: Да. Я тоже заметил, что таймер в разных осях работает с разными скоростями.

2sne: Почему таймер дурной тон?

Ответить

Номер ответа: 6
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #6
Добавлено: 23.07.04 18:52
Потому мало того что это контрол, да еще он себе и отдельную процедуру требует, и это не говоря о том, что он расходует ресурсы (память) не программы а системы, следовательно их число ограниченно, отсюда, таймеры нужно беречь %)... а цикл, он такой маленький, хорошенький...

Ответить

Номер ответа: 7
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #7
Добавлено: 23.07.04 19:34
1.Цикл без Sleep(0&;) ето тоже дурной тон.
2.Цикл с Sleep(0&;) дурной тон, потому что блокирует главный поток приложения, никаких тебе прорисовований и прочих прелестей, отсюда и контролы что движуться в циклах имеют такой плохой вид.

Ответить

Номер ответа: 8
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #8
Добавлено: 23.07.04 22:03
DaSharm, цитата:
> Значит циклами с DoEvents и Sleep(0&;)...

Читай Рихтера полностью :) Он описывает что делает Sleep с нулевым параметром... и убедись что ты не прав...

Ответить

Номер ответа: 9
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #9
Добавлено: 24.07.04 11:53
Ну а как же производительность разных машин?

Ответить

Номер ответа: 10
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #10
Добавлено: 24.07.04 12:41
:) Значит Sleep(1&;) ;)

Ответить

Номер ответа: 11
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #11
Добавлено: 24.07.04 13:52
И ты хочешь сказать, что слип(1) не создает задержку потока???

Ответить

Номер ответа: 12
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #12
Добавлено: 24.07.04 17:25
Создает, но благодаря DoEvents, он не зависает, а продолжает работать! (это я про цикл).
Т.ч. эмуляция многопоточности работает примерно так же как и таймер, в том смысле что так же переключает поток на обработку оконных сообщений, так же дает их обработать, но при этом не забывая и о текущей, на данный момент, операции...

И вообще, в чем ты меня пытаешься убедить, что использование таймера в данном случае много лучший вариант !?

Ответить

Номер ответа: 13
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #13
Добавлено: 25.07.04 08:31
Подскажите не читавшему Рихтера, чем полезен вызов Sleep(0)? Я что-то
ума не приложу... И целый день за этой темой наблюдаю, ожидая развязки
:)

Ответить

Номер ответа: 14
Автор ответа:
 Mufasa



Вопросов: 19
Ответов: 63
 Web-сайт: webpricols.narod.ru
 Профиль | | #14
Добавлено: 25.07.04 10:09
Ну чё ребята, пасиба Вам за помощь!
Через таймер я тоже пробовал, но моргает, зараза!

Ответить

Номер ответа: 15
Автор ответа:
 DaSharm



ICQ: 780477 

Вопросов: 72
Ответов: 1297
 Web-сайт: dasharm.com
 Профиль | | #15
Добавлено: 25.07.04 11:03
2 SNE: Оконные сообщения то принимаються, но обрабатываться не будут, пока приложение не выйдет из цикла. Я не говорю, что таймер лучше, но и циклы тоже плохо. Вот если бы отдельный поток тогда бы и циклы...

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам