我正在嘗試在我的 mainwindow.ui 中添加一個新的 QPushbutton。我通過拖入 .ui 添加了 Qpushbutton,在右側我可以看到它添加正確。

(我添加了 btnDownload 按鈕,并且很久以前添加了 btnQuit。它作業正常)
我點擊了 btnDownload 上的 go to slot 并創建了以下代碼:
void MainWindow::on_btnDownload_clicked()
{
QMessageBox::information(this,"notify","button is clicked "); //this part is what I added
}
但是,當我構建我的專案時,我沒有看到這個按鈕添加到我所在的位置。所以為了解決方法,我嘗試在 mainwindow.cpp 檔案中使用 setGeometry 函式來定位這個按鈕。
這是我嘗試撰寫的代碼:
ui->btnDownload->setGeometry(x,y,wide,height);
但我得到一個warning message說法:
no memeber named 'btnDownload' in Mainwindow::ui
我確實在.ui中添加了QPushbutton,并創建了連接的功能,但找不到這個按鈕..我應該如何解決這個問題?
uj5u.com熱心網友回復:
我想我修好了。我將它與 btnQuit 按鈕(作業正常)進行了比較,不同之處在于頭檔案中沒有說明新按鈕。我要修復它,我認為它會起作用。如果沒有,我會添加它。
uj5u.com熱心網友回復:
查看 .ui 檔案。是 XML。你應該看到這樣的
<widget class="QWidget" name="centralwidget">
<widget class="QPushButton" name="pushButton">
<property name="geometry">
<rect>
<x>130</x>
<y>150</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>PushButton</string>
</property>
</widget>
</widget>
通常在構建目錄中,<workspace>\build-<project>-Desktop_Qt_6_2_0_MSVC2019_64bit-Debug\<project>_autogen\include您應該找到一個ui_mainwindow.h包含內容的檔案
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QWidget>
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QWidget *centralwidget;
QPushButton *pushButton; //<<======= this
QMenuBar *menubar;
QStatusBar *statusbar;
void setupUi(QMainWindow *MainWindow)
{
您應該在下方找到按鈕的實體化
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
MainWindow->resize(800, 600);
centralwidget = new QWidget(MainWindow);
centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
pushButton = new QPushButton(centralwidget); // <<<============= this
pushButton->setObjectName(QString::fromUtf8("pushButton"));
pushButton->setGeometry(QRect(130, 150, 75, 23));
MainWindow->setCentralWidget(centralwidget);
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/376258.html
上一篇:我正在努力讓我為Roblox構建的獎勵系統與我也為同一游戲構建的調平欄一起作業
下一篇:從vimeo播放器中洗掉ui元素
