一直以来我都是将moc命令写成批处理文件,并且一直使用很正常,今早来要为一个类生成moc文件,批处理是直接由以前正常运行的批处理文件改成,应该是没有什么错误的,其结果却发现我所要的moc文件并没有生成.

原始头文件如下:

#pragma once

#include

#include

#include "QWDControl_Global.h"

//自定的一个与QButtonGroup功能类似的管理窗体的类,功能接口参照QButtonGroup.

class QWDWidgetGrp

{

Q_OBJECT

public:

QWDWidgetGrp(void);

public:

~QWDWidgetGrp(void);

public:

void AddWidget(QWidget* widget);//向窗口组中加入窗体

void DelWidget(int iIndex);//将窗口组中的第几个窗体移去

QWidget* Widget(int iIndex);//得到指定序号的窗体

QWidget* ActivedWidget();//返回当前再在显示的窗体

int ActiveWidgetIndex();//当前激活窗体的序号

int Id(QWidget* widget);//返回指定窗体的序号,如果没有找到该窗体则返回-1

void SetId(QWidget* widget,int iIndex);//择时定窗体的序号

public slots:

void ShowWidget(int iIndex);//按选择序号显示某一个窗体

private:

QVector m_Widgets;

QMutex m_mutexLock;

int m_CurWidgetIndex;

};

批片理文件如下:

moc QWDWidgetGrp.h -o ../src/QWDWidgetGrp.moc

经分析如果一个类想使用moc就必须继承于QObject.将头文件改成如下形式,生成moc文件成功.

//自定的一个与QButtonGroup功能类似的管理窗体的类,功能接口参照QButtonGroup.

class QWDWidgetGrp : public QObject

{

Q_OBJECT

public:

QWDWidgetGrp(void);

public:

~QWDWidgetGrp(void);

public:

void AddWidget(QWidget* widget);//向窗口组中加入窗体

void DelWidget(int iIndex);//将窗口组中的第几个窗体移去

QWidget* Widget(int iIndex);//得到指定序号的窗体

QWidget* ActivedWidget();//返回当前再在显示的窗体

int ActiveWidgetIndex();//当前激活窗体的序号

int Id(QWidget* widget);//返回指定窗体的序号,如果没有找到该窗体则返回-1

void SetId(QWidget* widget,int iIndex);//择时定窗体的序号

public slots:

void ShowWidget(int iIndex);//按选择序号显示某一个窗体

private:

QVector m_Widgets;

QMutex m_mutexLock;

int m_CurWidgetIndex;

};

本文只为初学者或者在项目过程中遇到相关问题的朋友提供思路,不喜勿喷。

qmoc文件_手动生成MOC文件相关推荐

  1. java xsl生成word文件_导出生成xsl文件

    public String expData() throws Exception{ List list = subAreaService.findAll(); HSSFWorkbook hssf =  ...

  2. 如何手动生成Dump文件并分析Dump文件

    大家都知道,当服务器出现蓝屏问题时,我们需要获取系统所产生的DUMP文件进行分析,如何确保在系统问题发生时,可以正确的生成所需要的DUMP文件呢?我们需要做如下检查: 1).右键点击"我的电 ...

  3. VS2017 下QT工程不能生成moc文件的解决方法

    1.选择要moc的类的头文件,鼠标右键属性,配置属性->常规,在项类型中将C/C++ 标头,改为自定义生成工具 2.左侧点击自定义生成工具,下方的常规,配置如下 命令行:"$(QTDI ...

  4. linux手动生成dump文件权限不足_linux下生成dump文件方法及设置

    https://andyniu.iteye.com/blog/1965571 Linux中生成 Core Dump 文件的方法 1 什么是 Core Dump Core Dump 又叫核心转储.在程序 ...

  5. 解决VS+QT无法生成moc文件的问题

    解决VS+QT无法生成moc文件的问题 参考文章: (1)解决VS+QT无法生成moc文件的问题 (2)https://www.cnblogs.com/pupilLZT/p/10760399.html ...

  6. vim保存文件时,生成.un~文件

    在用vim保存文件时,文件夹下生成.un~文件 怎么删除这些文件呢 在网上搜索的答案: http://stackoverflow.com/questions/15660669/what-is-a-un ...

  7. 文件 打包 及 生成Excel文件转PDF格式和Excsl文件格式一体数据

    文件 打包 及 生成Excel文件转PDF格式和Excsl文件格式一体数据 前言 一.转PDF 方法 二.生成Excsl文件 三.打包 总结 前言 个人理解,希望对你有所帮助. 一.转PDF 方法 代 ...

  8. 将xml文件按照xsl文件样式快速生成html文件的方法

    日志 >  个人日记 转载到我空间 复制本文网址 隐藏签名档 小字体 选用该信纸 上一篇 | 下一篇 | 返回日志列表 设置置顶 | 编辑 | 删除 将xml文件按照xsl文件样式快速生成htm ...

  9. linux手动生成dump文件权限不足_来玩一玩Linux常见命令~

    写在前面: 小伙伴儿们,大家好!上一篇我们学习了Linux相关部署方面问题: 这次我们一起来玩一玩常见的Linux相关命令,有点意思: 思维导图: 1,命令格式: 我们刚打开FinalShell,可能 ...

最新文章

  1. Windows LTSC、LTSB、Server 安装 Windows Store 应用商店
  2. centos7 解决chrome提示您的连接不是私密连接的方法
  3. 浅谈k8s cni 插件
  4. 2.06_Python网络爬虫_正则表达式
  5. s()++php,jquery siblings()函数正确用法
  6. TF:利用是Softmax回归+GD算法实现MNIST手写数字图片识别(10000张图片测试得到的准确率为92%)
  7. kingshard--一个支持sharding的MySQL Proxy项目
  8. python使用install_用 python setup.py install 安装 matplotlib 报错
  9. 计算机系统基础:校验码知识笔记
  10. 继承之接口知识点和思考练习
  11. 前妻捐赠一半财产做慈善 世界首富贝佐斯发推文称赞
  12. 一分钟区分一流公司、二流公司、三流公司(转)
  13. 如何把你的Linux系统变得更加安全
  14. 11计算机专业vb试题答案,西华师范大学计算机VB试题及答案11
  15. python 爬取网页数据到csv
  16. 解决微信支付、微信一键登陆在安卓10以上无法调起问题
  17. 春秋·左丘明-《左传·成公八年》
  18. 小米200万的新LOGO 一行代码就能修改?
  19. 利用XML制作UGUI登陆界面
  20. 小语种-lisp-凡利于语言设计者的,也利于语言使用者

热门文章

  1. js创建对象的高级模式
  2. (转载)虚幻引擎3--【UnrealScript教程】章节一:8.Enums
  3. 将可执行程序的内存空间扩展到3GB(windows)
  4. PB_Truncate函数截取小数点引起的数字错误
  5. 关于STM32使用RTC时复位后程序死在 RTC
  6. ili9341代码移植注意事项
  7. 共识协议(9)NPOS波卡
  8. 区块链BaaS云服务(17)纸贵科技Z-BaaS“数据治理”
  9. 机器学习+算法考试有感 2019 山东大学
  10. Kubernetes通过containerd访问registry的30443端口