![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| Ibragim |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
Всем ночи доброй.
Такой вот вопрос: есть кусок кода
по этой обработке, по идее, переносится отображние фокуса на другой элемент (мой, я там сам все в WM_PAINT перерисую). Так вот, корректно перерисует он только в том случае, если я, например, спрячу и покажу окно, или закрою его окном другого приложениея, и т.д. А мне нужно сразу. Как сказать - "возьми и перерисуйся"? Добавлено @ 01:19 а, и еще: есть окно
Можно ему как-то сказать подсветить синим заголовок - что оно активно? Заголовок хоть убей серый, неактивный. Заранее спасибо. Это сообщение отредактировал(а) Ibragim - 29.7.2005, 01:17 |
||||
|
|||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 1 Всего: 44 |
1) сделай так:
2) за место сет фокус попробуй воспользоваться SetActiveWindow |
|||
|
||||
| Ibragim |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
Спасибо, 1) - без коментариев, все прекрасно тут же заработало.
... а вот 2) не помогает если не делаешь SetFocus - окно вообще не ловит сообщения, а SetActiveWindow ни к чему не приводит - никаких изменений. Может, лажа где-то в WS_XXX ? |
|||
|
||||
| chaos |
|
||||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 1 Всего: 44 |
а про это по подробнее бы и коду побольше |
||||
|
|||||
| Ibragim |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
C удовольствием:
Если нужно, вот классы окон:
|
||||
|
|||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 7 Всего: 146 |
А если после
ShowWindow(hLeftWnd, SW_RESTORE); // ну или SW_SHOW по идее должно помочь. -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| Rrader |
|
|||
|
Inspired =) ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1535 Регистрация: 7.5.2005 Репутация: 3 Всего: 191 |
SetForegroundWindow(hLeftWnd); |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 1 Всего: 44 |
вот посмотри решение:
сделал я следуюющее: создал дав независимых окна(не установленно свойство WM_CHILD и тп) послетого как создал делаю SetParent
если не понравится решение, попробуй почитать сдесь: http://www.lcard.ru/~nail/frolov/bsp/v17/ch1.htm#ch1_1 |
|||
|
||||
| Ibragim |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
Спасибо за помощь всем откликнувшимся, трудовая ночь начинается, буду попробовать. Сегодня напишу, что получилось.
|
|||
|
||||
| Ibragim |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
Да,
chaos, спасибо, все заработало!! сэнкс. |
|||
|
||||
| Ibragim |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
господа, а не знаете - как запретить двигать и изменять размеры окна, но иметь у него CAPTION (ну, эдакую синюю или серую панельку с названием вверху)?
|
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Обрабатываешь сообщение WM_GETMINMAXINFO, в lParam - указатель на структуру MINMAXINFO. В ней ставь нужные размеры. Или сразу при обработке этого сообщения SetWindowPos(...);
|
|||
|
||||
| Ibragim |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 28.9.2004 Где: Киев Репутация: нет Всего: нет |
а есть вариант просто убрать такую возможность в стиле окна? ну, например, чтобы пользователю нельзя было "ухватиться" за край окна?
|
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Сейчас посмотрю...
|
|||
|
||||
| Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Ага, вот стиль окна:
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |