Перерисовать окно

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
grindars
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 75
Зарегистрирован: 12.10.2005 (Ср) 12:42
Откуда: Москва

Перерисовать окно

Сообщение grindars » 16.10.2006 (Пн) 16:20

Как заставить обновится окно (конкретно - часы в трее), если известен только его hWnd? Делаю аналог Chameleon Clock, часы расширяются, но сообщение из топика про расширялку часов не помогает (обновляется только после нажатия кнопки <, ос WinXP)

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 16.10.2006 (Пн) 18:06

Call SendMessage (hWnd, WM_PAINT, 0, ByVal 0) - больше ни как. Возможно нужно послать родительскому окну.
Изображение

grindars
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 75
Зарегистрирован: 12.10.2005 (Ср) 12:42
Откуда: Москва

Сообщение grindars » 16.10.2006 (Пн) 18:40

неперерисовывает. пробовал посылать и самим часам, и родительскому... :(

grindars
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 75
Зарегистрирован: 12.10.2005 (Ср) 12:42
Откуда: Москва

Сообщение grindars » 16.10.2006 (Пн) 19:21

После того как сделал свое окно дочерним часов + поверх всех всех вроде расширяется. просюба попробовать всем у кого не XP или XP со стилем XP (у меня отключен, так как слишком много ресурмов ест). Программа через контекстное меню выходит, но не возвращяет размер часов! Лечится перезапуском explorer. Внешний вид примитивный, но мне щас надо узнать корректно ли работает. Скачать: http://grindars.org.ru/Clock.rar.

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 16.10.2006 (Пн) 20:18

Пробовал растянуть панель задач пошире, чтобы было видно не только текущее время, но и день недели? В этом случае отображаются "двойные часы": одни стандартные, другие твои.
Моду создают модоки, а распространяют модозвоны.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.10.2006 (Пн) 20:52

Ещё из того топика помню, что эксплорер растягивает таскбар под размер часов по приходу WM_SETTINGCHANGE. Может, его и слать?
Изображение

grindars
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 75
Зарегистрирован: 12.10.2005 (Ср) 12:42
Откуда: Москва

Сообщение grindars » 17.10.2006 (Вт) 12:37

а каких парамеры? 0, byval 0 не катят...

grindars
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 75
Зарегистрирован: 12.10.2005 (Ср) 12:42
Откуда: Москва

Сообщение grindars » 17.10.2006 (Вт) 13:21

Во, получилось! я просто слал WM_SETTINGCHANGE часам, а не таскбару.. скачать можно тут: http://grindars.org.ru/Clock.rar. Насчет глюка с двойными часами: его конечно можно полечить (растягивать окно, центровать надпись...), но это надо векторный фон. На стиле XP часы отображаются немного некорректно (не по центру места для часов), буду лечить...

grindars
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 75
Зарегистрирован: 12.10.2005 (Ср) 12:42
Откуда: Москва

Сообщение grindars » 17.10.2006 (Вт) 14:59

Делаю возвращение прежнего размера... и вот глюк: Размер возвращается, но вместо часов - пустота. И если не востанавливать размер то видно что вместо часов ставится день недели.
Изображение
Еще сделал поддержку стилей (csf - обычные ini)
Скачать


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

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

Сейчас этот форум просматривают: SemrushBot и гости: 43

    TopList  
cron