Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: Глюк графики VB6 + WinME. Usercontrol. Помогите. Добавлено: 20.09.05 21:50  

Автор вопроса:  Victor | Web-сайт: vt-dbnz.narod.ru | ICQ: 345743490 
Я столкнулся со следующей проблемой. создаю UserControl. Кнопочка, если быть более конкретным. И наблюдается следующая фигня: когда на диалоговом окне есть кнопочки, и на главной форме они есть тоже, кнопки из диалогового окна периодически отказываются прорисовываться, а иногда вообще рисуются в левом-верхнем углу экрана (ЭКРАНА, а не формы, на которой они размещены). Хотя одно решение этой проблемы мне уже известно: задать Autoredraw=true. Но когда кнопок на форме много, такой режим мне не нравится - много ресурсов потребляет.
Еще хочу замететь, что под XP все как в аптеке - никаких проблем.
Как от этого избавиться? или у меня просто драйвер видюхи левый...

Ответить

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

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



ICQ: 271202919 

Вопросов: 56
Ответов: 837
 Профиль | | #1 Добавлено: 21.09.05 00:06
На сайт зайдите.Какое прекрасное сочетание радиоактивно зеленого с цветом теста:-)))) Буааааа.
Empro просто бог HTML+CSS;-))

Ответить

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



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #2 Добавлено: 21.09.05 11:20
Сколько на линолиуме сижу - отродясь такого не было. Глюкавая кнопочка значит.

Ответить

Номер ответа: 3
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #3
Добавлено: 21.09.05 17:32
ХЗ. Сам понять не могу. Один недочет поправил - лучше стало, но все равно иногда проглючивает.
Для справок: AutoRedraw=False. рисую прямо на UserControl'е, только в событии Paint (раньше было так, что иногда и не в нем рисовалось - так глючило вообще по страшному)

Ответить

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



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #4
Добавлено: 23.09.05 06:11
Если рисуешь кнопки вручную апишными кистями, то возможно забываешь удалять кисти, а т.к. их число ограничено через некоторое время такого юзания прорисовка начинает глючить.
У меня, например, мои кнопки и на хрюше так гнали попервой, пока не разобрался...
2LamerOnLine:
А нах вообще нужен милень? Кажется это 98 с новым пакетом глюков. Разве не лучше уж 98SE?
Вопрос не риторический - очень интересно, т.к. на линолеуме долго не сидел.

Ответить

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



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #5 Добавлено: 23.09.05 11:34

А нах вообще нужен милень? Кажется это 98 с новым пакетом глюков. Разве не лучше уж 98SE?

Это у кого как :) У меня МЕ всегда работал стабильно, глюков по сравнению с 98 вообще не было. Для старого софта он даже надежнее 2к.
Наверное, зависит от того насколько криво его ставить :) У меня уж сколько лет стоит - доволен. Хотя, конечно, раз в полтора года переставляю - мусор набивается :) Ща две оси стоит - 2к (альтернатива) и МЕ - рулезная весчь!

Ответить

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



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #6
Добавлено: 23.09.05 18:12

Используемые функции:
VB:
Line
LoadResPicture
PaintPicture
API:
DrawTextEx.
Вот список функций, которыми реализована прорисовка кнопочки. А бяка возникает сразу при появлении диалогового окна (но как ни странно, не любое диалоговое окно глючит). Одним из сильнейших стимулов к такому поведению является перемещение диалогового окна, что заставляет прорисовываться кнопки на главной форме.

Ответить

Номер ответа: 7
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #7
Добавлено: 24.09.05 11:27
Ты там с parent hWnd инчего напутать не мог? Или с hDc?

Ответить

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



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #8
Добавлено: 24.09.05 20:49
Мог. Были попытки найти. Выложил кнопку:
http://vt-dbnz.narod.ru/dbButton.ctl
http://vt-dbnz.narod.ru/dbButton.ctx

Ответить

Номер ответа: 9
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #9
Добавлено: 24.09.05 21:13
А чего бы не весь тестовый проект в архиве? Вдруг чего не хватает?

Ответить

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



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #10
Добавлено: 26.09.05 01:47

Скинул архив тестовой версии программы.
Я точно знаю что я забыл выложить - .res-файл с рисунками.
Смотрите. http://vt-dbnz.narod.ru/CurrentVersion.rar (497кб)

Ответить

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



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #11
Добавлено: 05.10.05 19:43

Проблему решил!
Дело было в том, что в коде MouseDown, MouseMove, MouseUp вызывались графические методы. Убрал, и все стало прекрасно.

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #12 Добавлено: 05.10.05 21:35
если постоянно в MouseMove чё-то рисовать - мигание обеспечено

Ответить

Номер ответа: 13
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #13
Добавлено: 06.10.05 20:53
если постоянно в MouseMove чё-то рисовать - мигание обеспечено

А кто сказал, что я рисую на каждом MouseMove?
Я рисую когда юзер уводит мышь за кнопку - она отпускается. И когда приводит обратно - вдавливается. И никакого мигания, об этом я позаботился.

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #14 Добавлено: 06.10.05 21:11
ну малацца :)

Ответить

Страница: 1 |

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



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