• 0
Авторизация  
Данил Абдрафиков

Определение цвета заголовка окна Windows 10 [WinAPI]

Вопросы

В Color Constants есть константа clActiveCaption, которая возвращает цвет активного окна, но в Windows 10 возвращается совсем не тот цвет, который на данный момент.

Пробовал так:

GetSysColor(COLOR_ACTIVECAPTION)

Или:

clActiveCaption

В общем-то есть предположение, что это давно уже не работает и несовместимо с Windows 8/10. Есть костыли по вытаскиванию цвета активного окна?

Изменено пользователем Данил Абдрафиков

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 ответ на этот вопрос

  • 1
var
Reg:TRegistry;
begin
    Reg:=TRegistry.Create;
    reg.RootKey:=HKEY_CURRENT_USER;
    reg.openKey('SOFTWARE\Microsoft\Windows\DWM',true);
    value:=reg.ReadInteger('ColorizationColor');
    Reg.CloseKey;
    Reg.Free;
    TAlphaColorRec(Value).R:=Round(TAlphaColorRec(Value).R /100 *35);
    TAlphaColorRec(Value).G:=Round(TAlphaColorRec(Value).G /100 *35);
    TAlphaColorRec(Value).B:=Round(TAlphaColorRec(Value).B /100 *35);
Color:=Value;


Я делаю так!

Изменено пользователем OnePeople

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

Авторизация  

  • Похожий контент

    • От Pulsarius
      Здравствуйте!
      Может кто-нибудь уже проходил через подобное и знает как это реализовать и подскажет. Мне нужно программно создать виртуальный модем и входящее подключение через него. Ну или хотя бы через командную строку. Пробовал через RAS API, но получается не то, что мне нужно. Вот визуализация того, что мне нужно проделать:
       
    • От chaplin.u@gmail.com
      Когда развёртываю ( деплой) на Анроиде я подключаю прибор - студия его видит и дальше по инструкции. 
      Как это сделать на планшете с Windows10 ? 
    • От Vitaldj
      Пожалуйста поясните. Пришла новость о возможности XE8 с сервис паком 1 адаптировать свое приложение под  Windows 10, но со стилями под  VCL. Как то VCL мало интересует, что с FMX? Будет работать и работать красиво, нативно?
    • От DirtyBorov
      Подскажите как можно изменить иконку окна в runtime? 
      Суть проблемы в том, что мне надо поддерживать приложение для разных заказчиков. Каждый из них хочет иметь собственную иконку в приложении. Очевидное решение - создать несколько проектов и каждому задать требуемую иконку. Однако на практике это весьма утомительное занятие. Хотелось бы сделать одно приложение, а иконки подгружать динамически на основании настроек приложения.
      Вспоминая практику VCL и WinAPI, подменить иконку Application оказалось задачей тривиальной:
      NewAppIcon := TIcon.Create; NewAppIcon.LoadFromFile(AIconFile); SendMessage(ApplicationHWND, WM_SETICON, 1, NewAppIcon.Handle); А вот дальше начались проблемы. Окна уже прогрузили иконку по умолчанию и добраться до них у меня не получается. 
      Добраться через стиль не получается, потому что TForm не является наследником TStyledObject и не имеет StylesData. Через FindStyleResource тоже не получается добраться.
       
      Может кто знает как?
       
    • От vladimi-r
      Существуют ли готовые решения для Win и Mac?
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу