Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.02.2012, 17:17   #1
Biohazard
Пользователь
 
Регистрация: 23.02.2009
Сообщений: 78
По умолчанию Цвет фона окна

Всем доброго времени) пытаюсь получать цвет фона окна по хэндлу или по DC, но все функции, которые мне посоветовали не помогают( вероятно не правильно использую или нет вовсе таких функций О_О. Пытался через GetBkColor()
GetSysColor()
GetDCBrushColor()
но что то не выходит(
дайте плиз рабочий примерчик, ато уже все волосы из головы выпали) ну и если возможно, так же присвоение цвета) заранее благодарен)

p.s. то ж самое с цветом шрифта окна, сам шрифт получаю функцией font.Handle:=SendMessage(h, WM_GETFONT, 0, 0);, но цвет она всегда возвращает чёрный

//добавленно
Мне подсказали, что есть способ: "послать сообщение окну о перерисовке и в этот момент отловить цвет фона"
кто нибудь подскажет с реализацией?

Последний раз редактировалось Biohazard; 16.02.2012 в 18:34.
Biohazard вне форума Ответить с цитированием
Старый 17.02.2012, 06:42   #2
Biohazard
Пользователь
 
Регистрация: 23.02.2009
Сообщений: 78
Восклицание

спасибо всем за помощь, задачу решил сам)))

Код:
  Shape1.Brush.Color:=FindControl(WindowFromPoint(Mouse.CursorPos)).Brush.Color;
работает для всех окон, у которых есть это свойство) для остальных находить и не надо, вопрос: "как проверить теперь что у окна этого свойства нет?" ато ошибку выдаёт(

Последний раз редактировалось Biohazard; 17.02.2012 в 06:52.
Biohazard вне форума Ответить с цитированием
Старый 17.02.2012, 07:11   #3
Biohazard
Пользователь
 
Регистрация: 23.02.2009
Сообщений: 78
По умолчанию

Цитата:
Сообщение от Biohazard Посмотреть сообщение
спасибо всем за помощь, задачу решил сам)))

Код:
  Shape1.Brush.Color:=FindControl(WindowFromPoint(Mouse.CursorPos)).Brush.Color;
работает для всех окон, у которых есть это свойство) для остальных находить и не надо, вопрос: "как проверить теперь что у окна этого свойства нет?" ато ошибку выдаёт(
блин косяк( таким образом только почемуто у самой себя нормально получает цвет..
Biohazard вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
цвет фона webbrowser grom333 Компоненты Delphi 1 25.05.2011 17:59
Каким образом можно изменять цвет фона и цвет шрифта в Label? jungle Win Api 17 21.09.2009 00:38
Цвет фона в блокноте. Alexxx92 Паскаль, Turbo Pascal, PascalABC.NET 4 18.05.2009 04:45
Как с помощью JavaScript изменить цвет фона ячеек в таблице,так что бы можно было выбрать цвет из списка Gotessa JavaScript, Ajax 1 09.05.2009 16:05
Цвет фона кнопки romets Win Api 10 23.01.2008 17:13