第一篇 QT介绍及第一个程序

该文章展示了一个使用QT框架编写的简单C++程序,用于创建一个跨平台的计算圆周长的对话框。程序包含主函数、头文件及源代码,利用QDialog、QLabel、QLineEdit、QPushButton和QGridLayout等组件,实现了用户输入圆半径并显示周长的功能。连接按钮点击信号与计算圆周长的槽函数,当输入变化或按钮被点击时,会自动更新结果。
摘要由CSDN通过智能技术生成
  • 什么是QT
  1. QT是一个跨平台的C++图形用户界面应用程序框架。
  • 第一个QT应用程序  ----  计算圆周长的对话框应用程序
  1. 如图:

  1. 源码如下:

main.cpp 文件内容:

#include "calcircledialog.h"
#include <QApplication>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    CalCircleDialog w;
    w.show();
    return a.exec();
}

calcircledialog.h 文件内容:

#ifndef CALCIRCLEDIALOG_H
#define CALCIRCLEDIALOG_H
 
#include <QDialog>
#include <QLabel>
#include <QLineEdit>
#include <QPushButton>
#include <QGridLayout>
QT_BEGIN_NAMESPACE
namespace Ui { class CalCircleDialog; }
QT_END_NAMESPACE
 
#define PI     (3.14)
 
class CalCircleDialog : public QDialog
{
    Q_OBJECT
 
public:
    CalCircleDialog(QWidget *parent = nullptr);
    ~CalCircleDialog();
private slots:
    void ShowCirclrRound();
private:
    Ui::CalCircleDialog *ui;
private:
    QLabel m_labCalParaTip;   //输入圆半径提示
    QLabel m_labResult;
    QLineEdit m_lineCirclePara;
    QPushButton m_btnCal;
};
#endif // CALCIRCLEDIALOG_H
calcircledialog.cpp文件内容:
#include "calcircledialog.h"
#include "ui_calcircledialog.h"
 
CalCircleDialog::CalCircleDialog(QWidget *parent)
    : QDialog(parent)
   // , ui(new Ui::CalCircleDialog)
{
    //ui->setupUi(this);
    QGridLayout *mainLayout = new QGridLayout(this);
    m_labCalParaTip.setText(tr("请输入圆的半径:"));
    m_btnCal.setText(tr("显示圆的周长"));
    mainLayout->addWidget(&m_labCalParaTip, 0, 0);
    mainLayout->addWidget(&m_lineCirclePara, 0, 1);
    mainLayout->addWidget(&m_labResult, 1, 0);
    mainLayout->addWidget(&m_btnCal, 1, 1);
 
    connect(&m_btnCal, SIGNAL(clicked()), this, SLOT(ShowCirclrRound()));
    connect(&m_lineCirclePara, SIGNAL(textChanged(QString)), this, SLOT(ShowCirclrRound()));
}
 
CalCircleDialog::~CalCircleDialog()
{
    //delete ui;
}
 
void CalCircleDialog::ShowCirclrRound()
{
    QString strValue = m_lineCirclePara.text();
    int iValue = strValue.toUInt();
    double iRound = 2*iValue*PI;
    strValue.setNum(iRound);
    m_labResult.setText(strValue);
}

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值