解决qt修改完ui文件起不到作用

问题:qt修改ui文件,运行后却没有更新.

原因:程序中使用的ui_xx.h文件不是最新的文件

解决办法:

方法1: 取消影子构建,此后构建目录与源码处于同一目录,每次编译更新程序使用的UI文件 

方法2:项目设置文件.pro内增加 UI_DIR=[ui_xx.h相对编译目录的相对路径或者自己的绝对路径],同时删除掉源代码目录中ui_*.h,clear all, -> qmake -> rebuilt all (注意qmake用来生成makefile,而build用来编译链接代码.)

方法3:直接改Projects的Shadow build,直接取消勾选,qmake 编译运行

Qt中,如果你在函数里无法找到UI中定义的`QTextEdit`控件,这通常意味着该控件没有正确地被你的代码识别或访问。以下是一些解决这个问题的步骤: 1. 确保UI文件已正确加载:当你使用Qt Designer创建UI并将其保存为.ui文件时,确保在代码中正确加载了这个UI。通常,这可以通过`QMainWindow::setupUi()`或者`QWidget::setupUi()`方法来实现。 2. 检查控件的名称:在Qt Designer中为你的`QTextEdit`控件设置了一个唯一的名字(objectName),确保在代码中引用时使用了这个名字。例如,如果你的控件名字是`textEdit`,那么在代码中应使用`ui->textEdit`来访问它。 3. 确保成员变量已经生成:当你在Qt Designer中修改UI并且保存后,需要在Qt Creator中运行.uic(UI编译器)来生成相应的头文件(通常是与.ui同名,但扩展名为.h的文件),该文件包含了一个指针成员变量列表,这些成员变量用于访问UI中的控件。 4. 使用正确的指针类型:确保你使用的指针类型与你的控件类型相匹配。在你的情况下,应该是`QTextEdit*`类型的指针。 5. 检查代码中的作用域:如果你在一个私有槽函数或者成员函数中尝试访问`QTextEdit`,确保你有一个指向UI的指针,并且该UI包含了一个`QTextEdit`控件。例如: ```cpp void MainWindow::on_button_clicked() { // 假设你的UI类是Ui::MainWindow,并且ui是这个类的实例 ui->textEdit->setText("Hello World!"); } ``` 确保以上各点都正确无误后,你应该能够正常访问UI中的`QTextEdit`控件了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值