QDialog 的 setWindowFlags 问题

weizhouyue0119 2012-12-25 04:58:30
我在一个QDialog里,用上下文菜单(右键)打开另一个QDialog:

m_ui->tableView->setContextMenuPolicy(Qt::ActionsContextMenu);
setShowFields = new QAction(tr("Customize show fields"),this);
connect(setShowFields, SIGNAL(triggered()), this, SLOT(showFields()));
m_ui->tableView->addAction(setShowFields);

然后在showFields()方法中:
A a(this);
在A的构造函数里:
m_ui->setupUi(this);
默认的窗体右上角是帮助和关闭按钮,但是我想把帮助按钮去掉,只保留关闭按钮。
setWindowFlags(Qt::WindowCloseButtonHint);

但是结果这个dialog的边框都不见了。



有人知道是为什么吗?多谢!

如果不是通过上下文菜单(右键菜单)打开的dialog,就可以修改窗口属性。
...全文
791 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
kidscannan 2013-01-11
  • 打赏
  • 举报
回复
楼主怎么解决的,我现在也遇到这样的问题,能不能分享一下。谢谢
weizhouyue0119 2012-12-26
  • 打赏
  • 举报
回复
问题已经解决
__阿飞__ 2012-12-26
  • 打赏
  • 举报
回复
抱歉,上一个回答有误,没看清楼主的意思,楼主参考这里: http://blog.csdn.net/jiong_1988/article/details/7785270 用:
setWindowFlags(windowFlags()&~Qt::WindowCloseButtonHint&~Qt::WindowContextHelpButtonHint);
引用 楼主 weizhouyue0119 的回复:
我在一个QDialog里,用上下文菜单(右键)打开另一个QDialog: m_ui->tableView->setContextMenuPolicy(Qt::ActionsContextMenu); setShowFields = new QAction(tr("Customize show fields"),this); connect(setShowFiel……
__阿飞__ 2012-12-26
  • 打赏
  • 举报
回复
兄弟试下这个:
setWindowFlags(Qt::FramelessWindowHint);
weizhouyue0119 2012-12-26
  • 打赏
  • 举报
回复
有人知道吗?急,多谢!

16,817

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧