91嫩草国产线免费观看_欧美日韩中文字幕在线观看_精品精品国产高清a毛片_六月婷婷网 - 一级一级特黄女人精品毛片

QT怎么實現點擊一個按鈕,在輸入框中輸出按鈕的值

首頁 > 公司事務2023-03-10 17:06:06

Qt如何實現按鈕控制文本框顯示按鈕上的字符

很簡單的程序,LZ自己寫吧……
大致如下:
首先自定義一個類,繼承自QWIDGET,此類有QPUSHBUTTON,QLINEEDIT這兩個子部件,再自定義一個槽函數,用來修改qlineedit中文本內容,再用個connect將qpushbutton的clicked()信號與自定義槽連接就可以了。

點擊按鈕彈出對話框 qt

我用的qt4+kdevelop開發,我來說一下步驟吧,供你參考:
(ps:qt3是可以建立 C++工程的,qt4只能做界面)
現在,我要建立一個對話框,對話框內只有一個按鈕(pushButton),點擊按鈕會彈出一個MessageBox.步驟如下:
1、新建一個文件夾test3,打開designer制作好界面
2、在test3文件夾內添加3個文件,分別為test3.h,test3.cpp,main.cpp,在test3.h添加如下代碼:
#ifndef TEST3_H
#define TEST3_H

#include <QtGui/QDialog>
#include <QStandardItemModel>
#include "ui_test3.h"

class test : public QDialog
{
Q_OBJECT

public:
test(QWidget *parent = 0);
~test();
private:
Ui_Dialog ui;
private slots:
void on_pushButton_clicked();
};

#endif
在test3.cpp中添加如下代碼:
#include "test3.h"
#include <QLibrary>
#include <QMessageBox>

test::test(QWidget *parent)
: QDialog(parent)
{
ui.setupUi(this);
}

test::~test()
{

}

void test::on_pushButton_clicked()
{
QMessageBox::information(this,tr("hello"),tr("Mars"));
}
在main.cpp中添加如下代碼:
#include <QtGui>
#include <QApplication>
#include "test3.h"

int main(int argc, char *argv[])
{
QApplication app(argc,argv);
test *dialog = new test;
dialog->show();
return app.exec();
}
3、打開控制臺,輸入如下命令:qmake -project會生成一個test3.pro的工程文件
4、打開kdevelop,選擇project->import existing project,選中test3文件夾。
5、build->build project
6、運行吧

再說兩句(ps:我承認我多嘴)

vc里面給一個按鈕添加事件只需要通過雙擊按鈕就可以了,但是這里不一樣,通常情況下有兩種方法。1、按照一定的命名規則為一個函數取名字,規則如下:on_name_singal,比如要為pushButton_2添加一個事件,只需要將相應函數命名為 on_pushButton_2_clicked();就可以了.2、使用connect連接控件和相應的函數,比如上面的例子我們可以在構造函數里添加 connect(pushButton,SIGNAL()clicked(),this,SLOT(hahaha()));
(ps:先把on_pushButton_clicked()函數改名為hahaha)
也行。那么,我想你也應該明白代碼寫在那里了吧,就是在on_pushButton_clicked()函數里面。
我講完了

如題,在Qt Creator中 當按下按鈕,會在label中顯示所按按鈕的坐標。怎么實現?

給按鈕創建點擊事件槽函數,在函數里面獲取按鈕坐標

ui->pushButton0->x();
ui->pushButton0->y();

QString X_Y
X_Y=QString("X=%1 Y=%2!").arg(QString::number(ui->pushButton0->x())).arg(QString::number(ui->pushButton0->y())) );
獲取x,y坐標
ui->label->setText(X_Y);
用QT事件:
void mouseMoveEvent ( QMouseEvent * e )
{
int xPos, yPos;
xPos = e->globalPos().x() ;
yPos = e->globalPos().y() ;
然后將xPos,yPos轉為QString ;

label->setText(QString);

}

相關推薦:

女職工的權益如何保護(對女職工的特殊勞動保護有哪些)

錢寶是否立案(錢寶網4月15日前能退款嗎)

拒不執行賠償(拒絕賠償會有什么后果)

離婚人的個稅(離異家庭個稅子女扣除)

產品雙倍賠償(消費者在何種情況下可獲得雙倍賠償)

dede58.com出品