Как мне из дочернего окна поставить font size для qlabel в QMainWindow

Мне нужно из окна settings поставить размер шрифта для текста который находится в главном окне


Ответы (1 шт):

Автор решения: Alexander Chernin
class MainWindow : public QMainWindow {
    Q_OBJECT
public slots:
    // Устанавливаем размер шрифта
    void setFontSize(int value) {
        QFont font = ui->label->font();
        font.setPointSize(value);
        ui->label->setFont(font);
    }

}

class Settings: public QWidget {
    Q_OBJECT
signals:
    // Отправляем размер шрифта (например, при изменении, или по нажатию кнопки)
    void fontSize(int value);
}

int main() {
    ...
    MainWindow mainWindow;
    Settings settingsWindow;

    // Соединяем сигнал со слотом
    QObject::connect(&settingsWindow, &Settings::fontSize,
                     &mainWindow, &MainWindow::setFontSize);
    return a.exec();
}
→ Ссылка