首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CFileDialog作为QWidget的子代

CFileDialog作为QWidget的子代
EN

Stack Overflow用户
提问于 2011-07-19 11:13:09
回答 1查看 510关注 0票数 0

是的,我知道不应该混合不同的平台,但是我正在开发一个Qt应用程序,现在我们有了一个新的要求:应该使用一个标准的来代替QFileDialog。

因此,我想创建一个CFileDialog,它是一个QWidget的子级。我发现了一个与反问题相关的问题: QWidget作为现有MFC组件的子级,但与我的特定问题无关。

我的计划是编写一个包装类。

代码语言:javascript
复制
class FileStdWDialog : CFileDialog

有构造函数

代码语言:javascript
复制
FileDirStdWDialog(QWidget *parent, ...);

并将其映射到对超类构造函数的调用。

代码语言:javascript
复制
CFileDialog(..., ..., ..., ..., ..., CWnd* pParentWnd, ...)

因此,如果我正确理解,我的问题归结为将QWidget *映射到CWnd *。你知道有什么简单的方法吗?

更新

谢谢你的暗示。可能,为QWidget获取HWND并将其转换为CWnd *是正确的解决方案。我要试试这条路。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-19 11:37:27

你可以打电话给::GetOpenFileName::GetSaveFileName。我认为,这些是Win32函数,CFileDialog封装的。这样你就不需要MFC了。

顺便说一下,从Windows开始,建议使用公用项对话框,而不是标准的Open。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6746239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档