-
大小: 709KB文件类型: .zip金币: 2下载: 0 次发布日期: 2021-05-14
- 语言: 其他
- 标签: Qt 实例 类向导 ClassWizard
资源简介
这是一个Qt帮助文档中的一个示例,类向导,我的博客中有一些要注意的问题,是在Windows下用Qt5做的
博客地址:http://blog.csdn.net/solomon5926/article/details/8696912

代码片段和文件信息
/*
2013年3月19日17:57:11
*/
#include
#include “classwizard.h“
ClassWizard::ClassWizard(QWidget *parent)
:QWizard(parent)
{
addPage(new IntroPage);
addPage(new ClassInfoPage);
addPage(new CodestylePage);
addPage(new OutoutFilesPage);
addPage(new ConclusionPage);
setPixmap(QWizard::BannerPixmap QPixmap(“:/images/banner.png“));
setPixmap(QWizard::BackgroundPixmap QPixmap(“:/images/backgroud.png“));
setWindowtitle(tr(“Class Wizard“));
}
void ClassWizard::accept()
{
QByteArray className = field(“className“).toByteArray();
QByteArray baseClass = field(“baseClass“).toByteArray();
QByteArray macroName = field(“macroName“).toByteArray();
QByteArray baseInclude = field(“baseInclude“).toByteArray();
QString outputDir = field(“outputDir“).toString();
QString header = field(“header“).toString();
QString implementation = field(“implementation“).toString();
QByteArray block;
if (field(“comment“).toBool())
{
block += “/*\n“;
block += “ “ + header.toLatin1() + “\n“;
block += “*/\n“;
block += “\n“;
}
if (field(“protect“).toBool())
{
block += “#ifndef“ + macroName + “\n“;
block += “#define“ + macroName + “\n“;
block += “\n“;
}
if (field(“includebase“).toBool())
{
block += “#include“ + baseInclude + “\n“;
block += “\n“;
}
block += “class“ + className;
if (!baseClass.isEmpty())
{
block += “:public“ + baseClass;
}
block += “\n“;
block += “{\n“;
/*qmake ignoreQ_object*/
if (field(“qobjectMacro“).toBool())
{
block += “ Qobject\n“;
block += “\n“;
}
block += “public:\n“;
if (field(“qobjectCtor“).toBool())
{
block += “ Q_OBECT\n“;
block += “\n“;
}
block += “public:\n“;
if (field(“qobjectCtor“).toBool())
{
block += “ “ + className + “(Qobject *parent = 0);\n“;
}
else if (field(“qwidgetCtor“).toBool())
{
block += “ “ + className + “(QWidget *parent = 0);\n“;
}
else if (field(“defaultCtor“).toBool())
{
block += “ “ + className + “();\n“;
if (field(“copyCtor“).toBool())
{
block += “ “ + className + “(const“+className+“&other);\n“;
block += “\n“;
block += “ “ + className + “&operator=“+“(const“+className+“&other);\n“;
}
}
block += “};\n“;
if (field(“protect“).toBool())
{
block += “\n“;
block += “#endif\n“;
}
QFile headerFile(outputDir + “/“ + header);
if (!headerFile.open(QFile::WriteOnly | QFile::Text))
{
QMessageBox::warning(0 Qobject::tr(“Simple Wizard“)
Qobject::tr(“Cannot write file %1:\n%2“)
.arg(headerFile.f
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-03-21 16:32 ClassWizardExample2\
文件 13444 2013-03-20 12:10 ClassWizardExample2\classwizard.cpp
文件 1956 2013-03-20 12:00 ClassWizardExample2\classwizard.h
文件 329 2013-03-20 15:49 ClassWizardExample2\classwizard.qrc
文件 0 2013-03-20 12:16 ClassWizardExample2\classwizard.qrc.bak
文件 698 2013-03-20 16:02 ClassWizardExample2\ClassWizardExample2.pro
文件 379 2013-03-20 16:02 ClassWizardExample2\ClassWizardExample2.pro.bak
文件 17276 2013-03-20 16:01 ClassWizardExample2\ClassWizardExample2.pro.user
目录 0 2013-03-21 16:32 ClassWizardExample2\debug\
文件 472151 2013-03-20 12:11 ClassWizardExample2\debug\classwizard.o
文件 6 2013-03-20 15:48 ClassWizardExample2\debug\classwizard.qrc.bak
文件 942432 2013-03-20 16:03 ClassWizardExample2\debug\ClassWizardExample2.exe
文件 148783 2013-03-20 12:11 ClassWizardExample2\debug\main.o
文件 12112 2013-03-20 12:11 ClassWizardExample2\debug\moc_classwizard.cpp
文件 183801 2013-03-20 12:11 ClassWizardExample2\debug\moc_classwizard.o
文件 98626 2013-03-20 16:03 ClassWizardExample2\debug\qrc_classwizard.cpp
文件 27998 2013-03-20 16:03 ClassWizardExample2\debug\qrc_classwizard.o
目录 0 2013-03-21 16:32 ClassWizardExample2\images\
文件 6280 2013-03-20 15:46 ClassWizardExample2\images\background.png
文件 3197 2013-03-20 15:50 ClassWizardExample2\images\banner.png
文件 1789 2013-03-20 15:51 ClassWizardExample2\images\logo1.png
文件 1789 2013-03-20 15:51 ClassWizardExample2\images\logo2.png
文件 1789 2013-03-20 15:51 ClassWizardExample2\images\logo3.png
文件 1789 2013-03-20 15:51 ClassWizardExample2\images\watermark1.png
文件 1789 2013-03-20 15:51 ClassWizardExample2\images\watermark2.png
文件 734 2013-03-20 11:55 ClassWizardExample2\main.cpp
文件 12348 2013-03-20 16:03 ClassWizardExample2\Makefile
文件 52942 2013-03-20 16:02 ClassWizardExample2\Makefile.Debug
文件 53032 2013-03-20 16:03 ClassWizardExample2\Makefile.Release
目录 0 2013-03-19 23:13 ClassWizardExample2\release\
目录 0 2013-03-21 16:32 ClassWizardExample2\成果截图\
............此处省略5个文件信息
- 上一篇:GLaux (OpenGL辅助库)
- 下一篇:开启联想Y550 VT功能的工具
相关资源
- 60个HFSS 仿真模型库
- DELPHI与西门子200PLC的串口通信实例
- mybatis连接oracle实例
- LabVIEW钢琴实例
- 通信软件的具体实例──基于Socket的
- vrml学习实例
- vtk QT做的三维地质可视化系统2of2
- 汇编语言实例
- 51单片机基于protues的几个仿真实例
- S7-200模拟量编程实例
- Qt局域网聊天软件
- SIP电话实例
- Qt Creator opengl实现四元数鼠标控制轨迹
- QT局域网聊天系统(基于QT5.修改过)
- 4 1视图建模教程实例大全
- qt-电子点菜系统
- FPGA在步进电机驱动上的应用实例及代
- C 餐厅叫号系统(QT平)
- 基于Apache Mina实现的TCP长连接和短连接
- js万能播放器,网页播放插件实例
- QT 实现文件下载
- qt图像处理
- MFC网络编程实例
- Zebra打印实例Delphi
- 软件工程(数据流图) 实例
- QT,JPEG解码源代码(已完成)
- PSCAD风电建模实例双馈风力发电机的
- virtuoso实例教学
- VHDL学习及实例(100个例子)
- 软件工程实例订票系统
评论
共有 条评论