QT入门:制作简易计算器

使用QT制作一个简易计算器

在上述工程的dialog.h中添加如下加代码

class Dialog : public QDialog
{
	Q_OBJECT
public:
	Dialog(QWidget *parent = 0); 
	~Dialog();
private:
	QLabel *label1,*label2;
	QLineEdit *lineEdit;
	QPushButton *button;
};

此时要在文件最开始加入头文件:

#include <QLabel>
#include <QLineEdit>
#include <QPushButton>

在dialog.cpp 中添加如下代码

Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
{
    label1=new QLabel(this);
    label1->setText(tr("请输入圆的半径:"));
    lineEdit=new QLineEdit(this);
    label2=new QLabel(this);
    button=new QPushButton(this);
    button->setText(tr("显示对应圆的面积"));
    QGridLayout *mainLayout=new QGridLayout(this);
    mainLayout->addWidget(label1,0,0);
    mainLayout->addWidget(lineEdit,0,1);
    mainLayout->addWidget(label2,1,0);
    mainLayout->addWidget(button,1,1);
}

并添加头文件

#include <QGridLayout>

可能存在中文乱码问题

解决方案

label1->setText(QString::fromLocal8Bit("请输入圆的半径:"));

打开dialog.h文件,在类构造函数和控件成员声明后,添加如下代码

class Dialog : public QDialog
{
    ... ...
    QPushButton *button;
private slots:
    void showArea();  
};

④打开dialog.cpp 文件,在构造函数中添加如下加代码

Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
{
    ... ...
    mainLayout->addWidget(button,1,1);
    connect(button,SIGNAL(clicked()),this,SLOT(showArea()));
}

在showArea()中实现显示圆面积功能,代码如下

void Dialog::showArea()
{
    bool ok;
    QString tempStr;
    QString valueStr=lineEdit->text();
    int valueInt=valueStr.toInt(&ok);
    double area=valueInt*valueInt*PI;
    label2->setText(tempStr.setNum(area));
}

并增加全局变量

const static double PI=3.1416;
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值