Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Окна, Не могу поменять фон 
V
    Опции темы
nikolaich
Дата 19.12.2006, 21:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Всем привет. Скажите - реально ли поменять цвет чужого окна. В msdn ковырялся но ничего не нашел, разве что SetSystemColors(вроде так называется). но она меняет цвет всех окон. Заранее спасибо. 
PM MAIL   Вверх
Aleksandor
Дата 19.12.2006, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Практик
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 22.11.2005
Где: россия, зеленогра д

Репутация: 10
Всего: 12



Не могу представить зачем нужно менять цвет чужого окна smile  Но вероятно можно если поставить хук на сообщения и отлавливать скажем WM_ERASEBACKGROUND


--------------------
Call out Gouranga be happy!!!
Gouranga Gouranga Gouranga ....
That which brings the highest happiness!!
PM MAIL   Вверх
nikolaich
Дата 19.12.2006, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Есть программа для диспетчера которая отслеживает состояние удаленного оборудования по RS232(фиксирует аварии). Она кривая. Япытался написать свою прогу, но не смог расшифровать протокол обмена. Ну да ладно... Короче когда на оборудовании происходит авария определенное окошко загорается красным цветом и вкл сирена. Она будет орать пока оператор не зафиксирует аварию. После это окно становится сиреневым. Хотелось бы чтобы эти операции выполнялись автоматом.
А на счет WM_ERASEBACKGROUND спасибо, только в msdn какое то сухое описание че-то разобраться не могу что оно делает вообще.


PM MAIL   Вверх
Aleksandor
Дата 19.12.2006, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Практик
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 22.11.2005
Где: россия, зеленогра д

Репутация: 10
Всего: 12



а своя прога разве не может это делать? почему нужно управлять чужой? или может это дело на железе спаять, ну микроконтроллер с сиреной+мультиплексор+RS-232+датчики и т.п.? 


--------------------
Call out Gouranga be happy!!!
Gouranga Gouranga Gouranga ....
That which brings the highest happiness!!
PM MAIL   Вверх
anwe
Дата 19.12.2006, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 748
Регистрация: 2.9.2006

Репутация: 1
Всего: 23



Цитата(nikolaich @  19.12.2006,  21:23 Найти цитируемый пост)
определенное окошко загорается красным цветом и вкл сирена

Почему же тогда чужого окна. Если пишешь эту программу - этот твое окно


Два одинаковых мнения в одно время! smile 

Это сообщение отредактировал(а) anwe - 19.12.2006, 22:35
PM MAIL   Вверх
nikolaich
Дата 19.12.2006, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Свою прогу написать не могу т. к.  оборудование фирмы Alcatel там свой контроллер который общается с терминальной программой написанной этой же фирмой. Если бы понять протокол - все проще. А окошко не мое. оно принадлежит той самой терминальной прграмме.
PM MAIL   Вверх
anwe
Дата 19.12.2006, 22:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 748
Регистрация: 2.9.2006

Репутация: 1
Всего: 23



Тогда наверно, проще субклассинг, чем хук, ведь знаешь окно (имя, класс).
А может, вообще, проще FlashWindow?
PM MAIL   Вверх
Aleksandor
Дата 19.12.2006, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Практик
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 22.11.2005
Где: россия, зеленогра д

Репутация: 10
Всего: 12



А как же тогда узнать что произошла авария? Получается что нужно не только цвет менять, но сделать врезку в Alcatel для съема данных  smile  или свой датчик ставить параллельно?  


--------------------
Call out Gouranga be happy!!!
Gouranga Gouranga Gouranga ....
That which brings the highest happiness!!
PM MAIL   Вверх
nikolaich
Дата 19.12.2006, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 16.12.2006

Репутация: нет
Всего: нет



Цитата(Aleksandor @ 19.12.2006,  22:48)
А как же тогда узнать что произошла авария? Получается что нужно не только цвет менять, но сделать врезку в Alcatel для съема данных  smile  или свой датчик ставить параллельно?

Там ведется log - утром пришел и посмотрел

Добавлено @ 22:57 
Цитата(anwe @ 19.12.2006,  22:46)
Тогда наверно, проще субклассинг, чем хук, ведь знаешь окно (имя, класс).
А может, вообще, проще FlashWindow?

Да! учиться, уч.............. сабклассинг говоришь? Нужно почитать. Может подскажешь где, раз уж зацепили?

Добавлено @ 23:08 
Ладно закрываю тему. Пойду дальше smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0553 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.