Почему Qt не воспринимает русские буквы в классе который наследует QDialog

Почему Qt не воспринимает русские буквы в классе который наследует QDialog? Шрифт поддерживает русские буквы. Когда пытаюсь присвоить русские буквы для QPushButton или QComboBox приложение либо не компилируется, либо вместо букв я вижу вопросики на кнопке. Когда я делаю тоже самое в классе унаследованном от QWidget то все ок.

#include "AddExpenses.h"
#include "CalendarDialog.h"
#include <QDateEdit>
#include <QFontDatabase>

AddExpenses::AddExpenses(QWidget* parent) : QDialog(parent) {
    int fontId = QFontDatabase::addApplicationFont(":/ofont.ru_Angeme.ttf");
    QString fontFamily = QFontDatabase::applicationFontFamilies(fontId).at(0);
    QFont customFont(fontFamily);
    QBoxLayout* layout = new QHBoxLayout;
    m_edit = new QLineEdit;
    QRegularExpression regex(R"(^\d{0,15}(\.\d{0,2})?$)");
    QRegularExpressionValidator* validator = new QRegularExpressionValidator(regex, m_edit);
    //m_edit->setValidator(validator);
    m_edit->setStyleSheet("background-color: #ED2442; color: white;");
    m_edit->setFont(customFont);
    layout->addWidget(m_edit);

    QComboBox* comboBox = new QComboBox();
    comboBox->addItem(QStringLiteral("opt1"));
    comboBox->addItem(QStringLiteral("opt1"));
    comboBox->addItem(QStringLiteral("opt1"));
    comboBox->setStyleSheet("background-color: #ED2442; color: white;");

    layout->addWidget(comboBox);

    QPushButton* okBtn = new QPushButton();
    //connect(okBtn, &QPushButton::clicked, this, &QDialog::accept);
    okBtn->setFont(customFont);
    okBtn->setText("ОК");
    layout->addWidget(okBtn);
    setFont(customFont);
    //QPushButton* cancelBtn = new QPushButton("Отмена");
    //cancelBtn->setFont(customFont);
    //connect(cancelBtn, &QPushButton::clicked, this, &QDialog::reject);
    //layout->addWidget(cancelBtn);

    QDateEdit* dateEdit = new QDateEdit(this);
    dateEdit->setCalendarPopup(true); 
    dateEdit->setDisplayFormat("dd.MM.yyyy"); 
    layout->addWidget(dateEdit);

    setLayout(layout);
}

Вот что выводит при неудачной компиляции, такое происходит только когда в QPushButton или в QComboBox добавляются русские буквы. введите сюда описание изображения


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