компиляции активировать отслеживание изменения системной темы QT окном?
Это как на этапе компиляции?
Что значит как?
вы уже попробовали то, что я вам предложил? не работает?
Я решил подождать, может кто-то подскажет адекватный способ. Например как для dpiawareness
Ваш вопрос звучит так? Пользователь решил собрать ваше приложение, у него светлая тема. Взял исходники. Собирает получил приложение всегда со светлой темой. Копирует ваше приложение в компьютер у кого темная тема, оно все равно работает со светлой темой. Пользователь решил собрать ваше приложение, у него стоит темная тема. Взял ваши исходники. Собрал приложение. Запустил. У него темная тема. Передал приложение, тому, у кого стоит светлая тема. Это приложение так же работает в темной схеме Оба написанных выше, абазца, да? Т.е. тема определяется один раз при сборке и потом всегда используется она, не зависимо от компьютера и пользователя и темы
Да нет же. Я собираю приложение, у пользователя 1. со светлой темой заголовок окна светлый, у пользователя 2 с темной темой заголовок окна темный. По умолчанию это не так, только если указать параметр при запуске приложения. То есть Qt умеет отслеживать тему, вопрос в том, как выставить этот параметр не в консоли при запуске, а изнутри приложения и желательно не прибегая к откровенным костылям, типа модификации argc-argv
а почему вы говорите это определять при сборке приложения? Наверное корретный ваш вопрос: как при СТАРТЕ приложения определять мне световую схему пользователя и использовать ее?
Потому что вы не читаете что я написал. Мне нужно установить на момент компиляции параметр, который будет обрабатываться при старте. Тема определяется сама отлично, вы это можете проверить на любом 5.15 приложении в винде, которое использует системный заголовок окна
я прочитал внимательно ваш вопрос. и я понял его так поставил темную схему. собрал приложение с темной схемой поставил у себя светлую схему. собрал приложение с светлой схемой
Ну значит вы поняли не правильно. Попробую еще раз. Мне надо на этапе компиляции получить app.exe ведущий себя так же как ведет себя сейчас app.exe -platform:darkmode=1. Соотвественно сообщить qtGuiApplication что нужно учитывать системную тему
Ну тут скорее всего Win Api. Ищите примеры как определяется схема. Может быть это в реестре параметр. Его считывать и под него ставить светлую или темную схему
Да нет же. Это встроенная функциональность qtGuiApplication. Она уже есть. Все сделано
так в чём неадекватность передачи дополнительного параметра в конструктор QGuiApplication то? Учитывая, что других интерфейсов для переключения темы у qApp нет
Это костыль, потому я искал способ лучше. Для dpi awareness он есть, тут видимо нет
Обсуждают сегодня