前端Qt写纯代码界面转带UI文件的切换

本文介绍了在Qt编程中,如何在没有UI文件时手动定义界面元素并使用点操作符调用方法,以及在有UI文件时如何通过命名和ui指针来直接操作界面元素。通过对比两种方式,帮助初学者理解这两种方法在实际开发中的应用。
摘要由CSDN通过智能技术生成

当没有ui文件的时候写界面,界面上的元素都是对象,这些对象都要在头文件里先定义才能在之后显示出来。在写函数渲染界面的时候直接用定义的对象使用“."这个点来调用这个界面元素的的一些方法,例如

void ImageWidget::slot_itemClicked(QListWidgetItem * item) {
QStringList img_lst;
    QString srcDirPath = "C:/Users/Admin/Desktop/IMAGE/IMAGE_OS";
    img_lst = getDirFilesName(srcDirPath);
    label_a.setPixmap(QPixmap(srcDirPath+ "\\" + img_lst .at(ui->listWidget->row(item))));
    label_a.showMaximized();
}

.h文件里定义label对象一个,这界面上要显示的元素label就会显示出来

private slots:
    void slot_itemClicked(QListWidgetItem * item);
private:
    QLabel label_a; 

如果要换成带ui文件的,需要在那个可以拖动的界面给那个label元素命名为label_a,就相当于有label对象可以用了:

void AutoAdd::slot_itemClicked(QListWidgetItem * item) {
    QStringList img_lst;
    QString srcDirPath = "C:/Users/Admin/Desktop/IMAGE/IMAGE_OS";
    img_lst = getDirFilesName(srcDirPath);
    ui->label_a->setPixmap(QPixmap(srcDirPath + "\\" + img_lst.at(ui->listWidget->row(item))));

    ui->label_a->show();

}

这时使用ui和->来调用对象和方法,就可以了。

总结一下:就是没有ui文件要在头文件里定义你要用的界面元素的对象,使用点调用。
有ui文件的,先在ui文件上放一个元素并且命名,名称和.cpp代码了的一致,不需要去头文件里定义就可以用这个对象了,然后用ui->,方法的调用也用->。这个虽然简单,但是几乎找不到哪里有讲的,当时对于初学者遇到的时候还是有些头疼的,这里记录一下。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值