-
大小: 709KB文件类型: .zip金币: 1下载: 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功能的工具
相关资源
- autopressmouse.rar
- Qt 右下角弹出框
- Qt4图片缩放应用程序
- Qt 坐标轴控件
- Qt的卡拉OK效果
- Qt双滑块QxtSpanSlider测试代码
- QT 开启线程接收串口数据并由主线程
- QT皮肤界面
- 画图软件qt实现
- QT调用有道翻译API_在线英汉词典
- MainWindowAndQml.rar
- qtcharts实现在UI界面绘制图形
- Qt+Opencv实现四步相移
- 使用Qt实现TCP中客户端和服务器的交互
- Qt纯代码记事本.zip
- QT实战,利用定时器QTimer实现图片的移
- draw_qwidget.zip
- QT实现多人屏幕共享系统.rar
- DrawBorad.tar.xz
- 笔趣阁小说器
- QT串口通信实例62216
- qt_opengl_obj.zip
- 基于Qt实现的多人聊天
- 基于QT的三连棋井字棋游戏
- QT自定义风格qss得日历
- Qt动态进度条
- 用QT5写简单的串口调试工具
- QT实现摄像头采集图像并截图
- qt下人脸识别
- ssm整合项目视频+源码
评论
共有 条评论