问题标签 [moc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
789 浏览

qt - 单文件 Qt4 演示

有时您需要在 Qt4中创建一个非常简单的单文件应用程序。然而这是有问题的,因为你总是在做 CPP/H 分离,然后 main() 在另一个文件中......

任何想法如何在单个文件中执行此操作?尽可能快地弄脏。

0 投票
2 回答
6790 浏览

c++ - QT 中的 moc 不会编译我的 c++ 头文件。说它太不一样了

好的,这是当我尝试 moc 我的一个头文件时 moc 告诉我的。我通过 Qt 4.5.3 命令提示符执行此操作,它说:

有任何想法吗???我正在尝试使用 Q_OBJECT 宏。

0 投票
2 回答
1985 浏览

c++ - 如何自动化 Qt moc?

我必须从 Qt 命令提示符运行以下命令:qmake -project然后make这给了我带有 Moc 文件的调试文件夹。奇怪的是,这是我的电脑生成文件
的唯一方法。moc_.cpp

那么我怎样才能自动化这些命令的任务,这样我就不必再次使用这些命令呢?

0 投票
1 回答
1761 浏览

qt - 帮助理解 QTest 教程

在 QTestLib 的教程中,有对文件“testgui.moc”和“testqstring.moc”的引用(一个例子可以在这里找到:http ://www.englishbreakfastnetwork.org/coverage/build/qt-copy/examples /qtestlib/tutorial3/.moc/debug-shared/testgui.moc)。其中包括配置测试所需的几条信息。不幸的是,教程没有解释这些信息是什么或如何改变它。具体来说,我指的是这些行:

现在,根据我对 QT 的理解, qt_meta_stringdata_TestQString 变量是附加了方法名称的类引用——这可以通过某行来完成METHOD(toUpper()),但我不确定这是否以及如何与其他任何东西相关结果格式化。

总的来说,我想知道发生了什么。文件顶部提供的注释说它与“元对象代码”有关,根据它后来覆盖的方法,这似乎很明显。

然而,更重要的是,我想知道如何修改 qt_meta_data 数组,以便它允许我调用更多函数和/或允许我将上面的函数重命名为不同长度的名称(将方法名称从 toUpper to toApple 似乎没有问题,但是将它们更改为 toUppercase 或 toUp 都会导致测试应用程序无法按预期运行)。

***************************** 更新 ******************** ************

下面已经有一个公认的答案,但我想我应该添加这个:这些文件完全在教程中的唯一原因是因为教程作者决定不为他们的类提供 .h 和 .cpp 文件。否则它们是无用的。

0 投票
2 回答
3692 浏览

c++ - 使用 Boost.Signal 代替 Qt 的信号?没有moc吗?

我知道它们可以一起使用,但我想知道是否可以在程序的 Qt 部分(小部件等)中用 Boost.Signal 替换 Qt 的信号和插槽机制。

有人试过吗?有什么陷阱吗?

假设我不使用任何其他 MOC 功能并用 boost.signal 替换信号/插槽,是否可以完全不使用 moc?

0 投票
2 回答
2000 浏览

c++ - MOC 将命名空间添加到类名

我在编译项目时遇到了这个非常奇怪的问题。MOC 似乎正在向被 moc'ed 的类名添加命名空间,尽管文件/类中的任何地方都没有提到它。

然而,命名空间存在于我使用的库中,但它隐藏在头文件中很远的地方,我不在 UI 文件中使用它。这是 MOC 生成的:

命名空间在的SmpTl声明中没有提到CaptureController,但它出现在 MOC 生成的 .cpp 文件中。

我正在使用带有 QT 集成的 Visual Studio。

0 投票
4 回答
14141 浏览

c++ - Qt moc 在头文件中实现?

是否可以告诉 Qt MOC 我想声明该类并在单个文件中实现它,而不是将它们拆分为 .h 和 .cpp 文件?

0 投票
1 回答
1136 浏览

qt - 带有信号和插槽的未定义参考链接器错误

使用 Qt Creator,我在 Qt 中创建了一个带有自定义插槽的类:

但是,我收到此链接器错误:

文档说:

如果您收到“未定义对 LcdNumber 的 vtable 的引用”行的编译器错误,您可能忘记运行 moc 或在链接命令中包含 moc 输出。

......但这意味着什么并不明显。

有什么我需要添加到我的班级或 .pro 文件中的吗?

编辑——这是我的 .pro 文件:

编辑:

这个问题处理同样的问题,但答案并没有说明我如何在 Qt Creator 中解决这个问题。我是否需要将 moc 生成的 .cpp 文件显式添加到要链接的文件列表中?这似乎是一种痛苦。

0 投票
3 回答
3593 浏览

ajax - 如何在没有* Active-X 的情况下在网页上显示 MOC 用户的在线状态?

是否可以在没有 Active-X 的情况下显示用户的在线状态?在我的谷歌搜索中,我发现了许多关于使用 OWS.js 文件中的 IMNRC() 函数在 Sharepoint 上显示 MOC 在线状态的文章,但这对于所有 Active-X 对象实例化来说似乎很老套,因此只能在 Internet Explorer 中使用。

有没有一种简单的方法,通过传递他们的电子邮件地址,使用某种后端 API 调用通信服务器来获取在线状态?

欢呼马库斯

0 投票
2 回答
3028 浏览

qt - moc 中的宏扩展

我想使用 Q_CLASSINFO 宏存储一些类信息。但是我想将它包装在我自己的宏中,例如:

不幸的是, moc 不会扩展宏,因此不会添加 Q_CLASSINFO。

我试图用已经预处理的源来提供 moc,但它在某些包含的 Qt 类上失败了。

您知道任何解决方法吗?