Size: a a a

2021 June 08

S

Skarn in Qt
А зачем? Тебе надо актуальную палитру получить?
источник

NM

Nastya Medveda in Qt
Скажите, пожалуйста,  почему Куте ругается
QWidget::setLayout: Attempting to set QLayout "" on MainWindow "", which already has a layout

на
#include "mainwindow.h"
#include <QGridLayout>
#include <QVBoxLayout>
#include <QLabel>

MainWindow::MainWindow(QWidget *parent)
   : QMainWindow(parent)
{
   QVBoxLayout *mainLayout = new QVBoxLayout;
   QLabel *mainLabel  = new QLabel("I am a label");
   QLabel *secondLabel = new QLabel("I am second lable");

   mainLayout->addWidget(mainLabel);
   mainLayout->addWidget(secondLabel);
   setLayout(mainLayout);

}
источник

м

мыши in Qt
потому что в QMainWindow есть лейаут
источник

NM

Nastya Medveda in Qt
А, то есть ему надо отдельный QWidget создать чтоб он там  между MainWindow и CentralLayout был?
источник

NM

Nastya Medveda in Qt
спаибо, зарабоатало.
источник

О

Олег in Qt
Чтобы выбрать нужную внутреннюю тему. Есть наследник QStyle у которого есть состояния для темной и светлой темы. Если их под маком вручную переключать то всё нормально выглядит. Но вот если тема тёмная на маке и светлая в приложении, часть виджетов выглядит некрасиво.
источник

О

Олег in Qt
И если один раз при старте проверить можно легко вызвав консольную команду, то что делать если тема сменится на лету вопрос. Пока вижу как решение это через objective-c подписаться на системные сигналы. Надеюсь это можно будет добавить просто как либу с сишным интерфейсом
источник

S

Skarn in Qt
А у тебя в теме стандартные цвета используются по палитре?
источник

S

Skarn in Qt
Изменение темы ОС гарантированно стриггерит redraw всего, и измененные цвета можно получить, вызвав ensurePolished() у какого-нибудь виджета.
источник

О

Олег in Qt
Не все стандартные и что более важно мне нужно явно узнать, что тема сменилась т.к. часть сложных виджетов стилями не переделать. Например встроенный питоновский редактор на базе qscintilla, какие виджеты со сложными qss и тд им нужно явно состояние поменять, они все на внутренний сигнал подписаны.
источник

S

Skarn in Qt
Придется ОС специфичный код использовать в таком случае.
источник

S

Skarn in Qt
Либо у окна в paintEvent можешь проверять на каждой отрисовке, не изменилась ли тема
источник
2021 June 09

FS

Flower Surgeon in Qt
/report
источник

M

Mr.Mait in Qt
источник

NM

Nastya Medveda in Qt
Добрый день, подскажите пожалуйста, почему обновление текста в resultLabel (строка 59) крашит приложение:
https://pastebin.com/dRLDTWcP
источник

m

mefest in Qt
обращаешься к пустому указателю
источник

我が名はレギオン... in Qt
>    QLabel *resultLabel  = new QLabel("0");
Это же просто создает локальный объект, который умрет после выхода из конструктора
источник

NM

Nastya Medveda in Qt
как оно может умереть пока на него не вызван delete?
источник

CC

Coccine Coccine in Qt
ты создаешь новый указатель, который видим только в конструкторе класса
источник

AN

Alexander N in Qt
Это утечка будет, объект не умрёт
источник