qt制作简易年龄菜单栏出现乱码

问题遇到的现象和发生背景

入门qt,运行遇到名字无法显示,拼音也是乱码

img

问题相关代码,请勿粘贴截图

class Widget : public QWidget
{
Q_OBJECT
private:
QPerson *boy;
QPerson *girl;
public:
Widget(QWidget *parent = nullptr);
~Widget();

private:
Ui::Widget *ui;
//void on_spin_valueChanged(int arg1);

private slots:
//自定义槽函数
void on_ageChange(int value);
void on_spin_valueChanged(int argl);
//界面按钮
void on_btnClear_clicked();
void on_btn_boyINC_clicked();
void on_btn_girlINC_clicked();
void on_btn_ClassInfo_clicked();

};

运行结果及报错内容

[Hook] attach 13448, E:\qt_project\Demo4\build-age-Desktop_Qt_5_12_9_MinGW_64_bit-Debug\debug\age.exe
QMetaObject::connectSlotsByName: No matching signal for on_spin_valueChanged(int)

我的解答思路和尝试过的方法

尝试:修改为拼音不可以显示;在测试的主窗口类构造函数在“ui->setupUi(this); ”语句前编写如上代码:
思路:匹配不了,尝试换运行,修改代码

我想要达到的结果

有中文名字,拼音能显示也行

从反馈来看,很可能是qperson类中声明name时类型有问题,造成信息损失,从现在展示的全面内容看,系统是能正确支持中文的。
需要看 qperson.h 中具体内容来判断。

核心代码没贴出来,报错和你的问题没关系

用QStingLiteral(),把那个乱码的放进括号里

文本区设置的编码不对,改程成和来源一直就可以了

以我两周的qt经验,绝对是给赋值出问题了

img

谢谢,求解问题的解决方法
##########运行结果###########

img

###########代码图#####

img

img

img

img

##3

img

img

img


####################################运行###########3

img