入门qt,运行遇到名字无法显示,拼音也是乱码
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经验,绝对是给赋值出问题了
谢谢,求解问题的解决方法
##########运行结果###########
###########代码图#####
##3