Qt-fy 现有枚举与 Qt 元数据一起使用

2023-12-21

假设我有一个现有的enum X { A, B }并希望将其与 Qt 元数据一起使用,例如QMetaObject / QMetaEnum.

QMetaObject meta = FsxSimConnectQtfier::staticMetaObject;
for (int i=0; i < meta.enumeratorCount(); ++i) {
    QMetaEnum m = meta.enumerator(i);
}

如果我定义我的enum在一个Q_OBJECT类,一切都很好,即我可以检索MyEnum 通过元数据系统 https://stackoverflow.com/questions/11679057/qt-no-metadata-by-meta-enumeratorcount-for-enum-in-q-object-why。但我怎样才能使X可用于元数据系统吗?

class FsxSimConnectQtfier : public QObject
{
    Q_OBJECT
    Q_ENUMS(MyEnum) 
    Q_ENUMS(X) // not working
public:
    explicit FsxSimConnectQtfier(QObject *parent = 0);
    enum MyEnum { G1, G2 };
    // how can I make enum X available for the metadata system
    // I have tried typedef, but did not work
    static const QString simConnectExceptionToString(const unsigned int id);
};
  1. 这是以下内容的后续:Qt:meta.enumeratorCount() 没有为 Q_OBJECT 中的枚举提供元数据,为什么? https://stackoverflow.com/questions/11679057/qt-no-metadata-by-meta-enumeratorcount-for-enum-in-q-object-why
  2. 动机:真实enum X包含许多异常代码,我想使用元数据系统来获取原始描述文本,几乎就像here http://labs.qt.nokia.com/2008/10/09/coding-tip-pretty-printing-enum-values/。原本的enum不是(!)一个Q_OBJECT.

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt-fy 现有枚举与 Qt 元数据一起使用 的相关文章

随机推荐

  • 使用nodeValue从domelement打印html内容

    我有 html 格式的图像 我将其解析为 DOMDocument 并开始使用它 doc new DOMDocument doc gt loadHTML article header imgs doc gt getElementsByTagN
  • 如何制作Photoshop描边效果?

    我正在寻找一种以编程方式重新创建以下效果的方法 给出输入图像 输入http www shiny co il shooshx ConeCarv q input png http www shiny co il shooshx ConeCarv
  • asp net core app出现MSB3277怎么办

    我正在使用引用 EntityFrameworkCore 2 1 3 包的数据库项目 但 AspNetCore App metapackage 包含 EntityFrameworkCore 2 1 2 引入我的数据库项目后 我收到此 msbu
  • 如何使用 Networkx 包显示更好分离的网络?

    我使用创建了一个图形对象pytextrank像这样的包 import pytextrank Some steps and calculations graph ranks pytextrank text rank path stage1 我
  • 如何测试存储库中标记为@Modifying的方法?

    例如我有 public interface CrudUserRepository extends JpaRepository
  • 使用 Active Directory 集成身份验证向 Azure Sql 数据库添加具有特定权限的新用户

    我有一个带有两个数据库的 Azure SQL Server 我尝试对其使用 Azure Active Directory 集成身份验证 其中一个数据库至关重要 大多数用户只需要被授予对此数据库的 读 访问权限 要添加具有 读者角色 的新用户
  • WCF 客户端错误:“未指定安全令牌颁发者的地址”

    我从 WCF 客户端收到以下错误 未指定安全令牌颁发者的地址 必须在目标 http site com TLAPI svc 的绑定中指定显式颁发者地址 或者必须在凭据中配置本地颁发者地址 我正在尝试连接到 SharePoint 服务应用程序
  • std::string::find 在 C++ 中未按预期工作

    我试图验证输入字符串中是否存在特定字符串 如果是 则根据找到的字符串执行某些操作 但似乎无论如何它总是在做第一个任务 if inputString find str1 gt 0 do something else if inputStrin
  • g++ 实现如何处理这种情况?

    这是一个后续问题this one https stackoverflow com questions 10002082 typecasting with virtual functions 考虑这个例子 include
  • Google 登录,数据库端

    我读过有关使用 Google 处理登录的信息这个网站 https developers google com accounts docs OAuth2Login 但它并没有很好地解释数据库应该发生什么 通常 对于数据库中的用户帐户 您会有类
  • 为什么我不能将变量传递到 PHP 中的包含文件中?

    我以前也遇到过这个问题before https stackoverflow com questions 1601348 passing php variables to an included file没有真正的解决方案 又出现这种情况了
  • 需要时自动加载函数/类库

    首先 介绍一下背景 我工作的公司使用massive函数 类库 它包含在每个页面上 成千上万行函数 其中 90 甚至可能不会在页面上调用 为了稍微减轻服务器负载 我一直在尝试更智能的库设置 为此 我将整个文件分成分类库文件 即 sql fun
  • rate() 函数如何平均请求持续时间?

    引自 普罗米修斯 观察值的计数和总和 https prometheus io docs practices histograms count and sum of observations doc 要根据名为 http request du
  • 浮动 div css 下的 margin-top

    我在 float right div 下有一个 div 由于某种原因 上边距无法应用于第一个 div 这是CSS over width 80 float right color e68200 under clear both backgro
  • WPF 中的数据模板

    我有一个关于 WPF 中的数据模板的一般性问题 假设我有一个名为 Question 的抽象类 以及各种子类 例如 MathQuestion GeographyQuestion 等 在某些情况下 使用 Question 数据模板将问题呈现为
  • 从作为引擎安装的 gem 重载 lib 文件

    我正在使用作为引擎安装的 gem 并想要自定义一些类 我想要重载的文件位于我的本地 rvm 目录中 rvmdir gem lib modulename containers file to override rb 我将文件复制到我的应用程序
  • 如何保证时间戳始终是唯一的?

    我使用时间戳对程序中的并发更改进行临时排序 并要求更改的每个时间戳都是唯一的 但是 我发现只需调用DateTime Now是不够的 因为如果快速连续调用它通常会返回相同的值 我有一些想法 但我认为没有什么是 最佳 解决方案 我是否可以编写一
  • MSBuild:包含自定义资源文件作为嵌入资源

    我在构建时使用 MSBuild 动态生成资源文件 但为了能够在运行时读取该资源文件 我需要它成为嵌入式资源 我到处都在研究如何在 a 中标记文件 csproj作为嵌入式资源 我什至尝试过这一点 但没有成功
  • json.net 特殊字符转义

    对 JSON 有点陌生 所以请原谅这个简单的问题 但根据找到的特殊字符列表here http www w3schools com js js special characters asp and here https developer m
  • Qt-fy 现有枚举与 Qt 元数据一起使用

    假设我有一个现有的enum X A B 并希望将其与 Qt 元数据一起使用 例如QMetaObject QMetaEnum QMetaObject meta FsxSimConnectQtfier staticMetaObject for