gpt4 book ai didi

c++ - 为什么我的 Qt 文件对话框的原生性取决于环境变量?

转载 作者:行者123 更新时间:2023-12-02 10:35:04 28 4
gpt4 key购买 nike

根据较早的答案,如 https://stackoverflow.com/a/2609618/2492801 , Qt 文件对话框只有在使用静态函数创建对话框时才是 native 的。这不是真的(实际上上面引用的答案中的评论指出这不再是真的)。

我有子类 QFileDialog并调用exec()方法来显示对话框。在 Eclipse 中,我设置了 PATH我的启动配置中用于查找 DLL 的环境变量。令我惊讶的是,如果我在 Eclipse 启动配置中选择“将环境附加到 native 环境”,我会得到 native Windows 文件对话框,如果我选择“用指定环境替换 native 环境”,我会得到非 native Qt 文件对话框。

有人对此有解释吗?哪个环境变量决定了我的文件对话框是否是原生的?

我正在使用 Qt 5.14.1 和 Mingw-w64。

最佳答案

原因很简单:我的路径中还有其他 Qt 库。例如 TortoiseHg 和 MikTeX 带有 Qt 库,我已经安装了它们。显然,当它们在路径中时,它们的一些 DLL 会被加载,这会影响 Qt 的行为。如果我替换 native 环境,则仅加载由我的启动配置定义的路径中的库。

关于c++ - 为什么我的 Qt 文件对话框的原生性取决于环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60703623/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com