用Qt练习C++写一个小的阶乘对话框

先来看代码


/********************************************************************************
** QT Study
**
** Created: Sat Aug 4 19:00:21 2012
**      by: Grant
**
** 
********************************************************************************/

#include <QApplication>
#include <QLabel>
#include <QPushButton>
#include <QHBoxLayout>
#include <string>
#include <sstream>
#include <QString>
#include <QDialog>
#include "ui_gotocelldialog.h"
using namespace std;


int frac(int N){
	if (N > 1)
		return	N * frac(N-1);
	return 1;
}


int main(int argc, char *argv[])
{
	QApplication app(argc, argv); //QApplication管理图形用户接口的各种应用,比如鼠标动作,默认颜色等。
	
	int result, number = 5;
	result = frac(number);
	QString title;
	
	QWidget *window = new QWidget;
	window->setWindowTitle("Scientific Computing Demo by Grant");
	
	QLabel *label = new QLabel("<h2><i>The fractional of 5 is </i> </h2>" + title.setNum(result)  );
	
	
	QPushButton *button = new QPushButton("Quit");

	QObject::connect( button,SIGNAL(clicked()),&app,SLOT(quit()) );
	
	QVBoxLayout *layout = new QVBoxLayout;
	
	QDialog *diaglog = new QDialog; 
	Ui::GoToCellDiag ui; 
	ui.setupUi(diaglog);
	
	layout->addWidget(diaglog);
	layout->addWidget(label);
	layout->addWidget(button);
	window->setLayout(layout);
	window->show();
	return app.exec();
}

让我们来看看一条有趣表达式

QDialog *diaglog =newQDialog;

这条语句是先开辟一段内存空间,然后在其上创建一个QDialog部件(widget)。Widget是windowgadget(窗口配件)的缩写。

窗口设计好了,那么我们需要在上面加内容,即初始化。初始化前,我们需要声明一个类ui,这个ui包含了窗体的子窗口以及布局,就是我们在designer里边看到的。

Ui::GoToCellDiag ui;

然后用对象ui里边的成员函数setupUi来初始化对话框。

ui.setupUi(diaglog);

过程就是两个开辟内存,然后初始化窗口。


Qt还是蛮有意思的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值