Друзья! Объясните, пожалуйста, по прикрепленному коду. Почему когда я наследуюсь

от QObject сигналы screenAdded и screenRemoved не работают. Если же наследоваться от QWidget и в main вызвать screen_controller.show() (обозначено в коде [2]), то все работает?

https://pastebin.com/FqByhP5U

15 ответов

11 просмотров

Вроде, должно работать.Передай ссылку на QApplication в конструктор: явная зависимость лучше неявной.

А кто посылает этим сигналы? Тот код вполне может хотеть слать этот сигнал только экранным объектам, то есть виджетам. Вот и фильтрует

Да, оно работает, просто ты ниодного окна не открывешь

Aleksandr-Bazhenov Автор вопроса
Aleksandr Bazhenov
проверил. не работает

Работает, покажи хотя бы одно окно

Aleksandr-Bazhenov Автор вопроса
Anatoly Shirokov
Работает, покажи хотя бы одно окно

да, я понял с окнами. Т.е если я даже внутри класса ScreenController создаю какой-то виджет и отображаю его, то все работает. Но а что если это приложение без окон. Просто в лог пишет когда экран подключают и отключают, то это уже работать не будет?

Aleksandr-Bazhenov Автор вопроса
Anatoly Shirokov
В доку иди, там описаны эти сигналы

в доке ничего особенного нет void QGuiApplication::screenAdded(QScreen *screen) This signal is emitted whenever a new screen screen has been added to the system. Но вот случай-то вполне рабочий, не надуманный, получать эти сигналы без виджетов

Aleksandr Bazhenov
в доке ничего особенного нет void QGuiApplication...

Тогда следующая фаза: изучение сырцов

Anatoly Shirokov
Фигню написал

Ну это предположение было..

Ilya Zviagin
Ну это предположение было..

Ну, ок, фиговое предположение

Aleksandr Bazhenov
в доке ничего особенного нет void QGuiApplication...

Просто, если читать доку и по другим методам: [static]QList<QScreen *> QGuiApplication::screens() Returns a list of all the screens associated with the windowing system the application is connected to. если application ничего не открывает, то и не будет скринов, к которым это приложение подсоединено. нет?

Aleksandr-Bazhenov Автор вопроса
Anatoly Shirokov
Просто, если читать доку и по другим методам: [sta...

не Screens возвращает нормально в конструкторе. Удалил этот код из примера

Похожие вопросы

Обсуждают сегодня

Подскажите, а есть vault lite или ченить такое?) А то нужен вольт для похода в вольт, но весит он ~500 мб) как-то многовато для парочки запросов ))
Alexandr Orloff
17
Всем привет, есть небольшая проблема Есть такой скрипт document.addEventListener('DOMContentLoaded', function () { const sliderTabs = document.querySelectorAll('.s...
A da
8
@go1337 @dblackCat Привет. Все ещё дрочусь с fastpanel. Добавил второй домен который должен смотреть в рут того же сайта, но так как это просто домен, а не сайт, я не могу ему...
Ross 🦴
9
До речі, в ево нема можливості чи якого розширення щоб з адмінки з телефона зайти і терміново щось в верстці поправити?
Женя
7
кто-нибудь пользуется тайм-трекерами во время работы? так много разных нагуглил, может есть что-то популярное
Lencore
8
Пацаны. Я разрабатываю софт для инвайтинга на телетон, и столкнулся с такой проблемой, в один из чатов не могу приглашать никого, не дает добавлять, в то же время через официа...
Kernel Panic
11
Скажите, а кому нужен Currency как отдельный плагин вместо полноценного ecommerce в OctoberCMS? Кто-то использует его уже или планирует в будущем? Может я что-то не понимаю?
Igor
13
Розмовами про Рево мені нагадали часи, коли шаблони правилися прямо в адмінці. Хто в курсі, чому відійшли від цієї практики, так блейд не працює? Доволі зручно ж було (інколи)
Женя
3
Всем добрый вечер, Рад оказаться в кругу единомышленников. Начинаю погружаться в мир .net веба. Зовут Ерасыл 🖖 У меня назрел вопрос: Какой процент проектов, прошедшие через в...
Ерасыл
6
Чому? Да тому що без GiT не уявляю нормального проекта а коли код в базі то то так собі
Dmytro Lukianenko
3
Карта сайта