2024-09-28 17:30:05 发布
网友
我正在尝试使用widget的winId将一个来自外来应用程序(python OCC)的显示嵌入到(Py)Qt中。但是当我把它传递给OCC时,我得到了一个溢出错误。 检查winId qt将返回4318283408,该值大于32位数字。我正在运行64位(osx),两个库都是为64位编译的,但我有预感,OCC仍然只喜欢32位数字。所以我的问题是,有没有办法控制Qt返回的winId的范围?在
谢谢
亨里克
在Qt的源代码中,在文件src/gui/kernel/qwindowdefs.h中,您会发现WId对于64位OSX是long(对于32位OSX,int)。64位OSX上的long长度为8字节(或64位),因此4318283408是一个有效值。在
src/gui/kernel/qwindowdefs.h
WId
long
int
如果要强制winId()返回32位值,则需要链接到Qt库的32位版本。在
在Qt的源代码中,在文件
src/gui/kernel/qwindowdefs.h
中,您会发现WId
对于64位OSX是long
(对于32位OSX,int
)。64位OSX上的long
长度为8字节(或64位),因此4318283408是一个有效值。在如果要强制winId()返回32位值,则需要链接到Qt库的32位版本。在
相关问题 更多 >
编程相关推荐