showFullScreen();弹不出菜单

DC_Sea 2017-10-20 04:53:54


黑色的是个 QOpenGlWidget;
不是 全屏显示的情况下 点击 "111" 会弹出菜单

但是 调用 showFullScreen() 全屏显示 菜单就不会再弹出来了

是那个QOpenGlWidget 引起的。。

哪位大神有解决办法
showMaximized 不能满足需求
...全文
874 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
huifeideyumao 2019-01-09
  • 打赏
  • 举报
回复
可不可以说的详细一点,遇到同样的问题
DC_Sea 2018-03-15
  • 打赏
  • 举报
回复
时隔数月, 回来结帖 QOPenGlWidget 窗口 在 showFullScreen 的情况下 会出现 弹不出 菜单 窗口等BUG。。 解决办法 参考 :http://doc.qt.io/qt-5/windows-issues.html 调用 QWindowsWindowFunctions::setHasBorderInFullScreen(w->windowHandle(), true); 就行。。。
DC_Sea 2017-11-03
  • 打赏
  • 举报
回复
没人知道吗?
DC_Sea 2017-10-23
  • 打赏
  • 举报
回复
引用 1 楼 ch122633 的回复:
这个可以吗?
//最大化窗口
    this->setWindowState(Qt::WindowMaximized);
和 showMaximized 这个时一样的 还能看到开始菜单
习惯就好zz 2017-10-21
  • 打赏
  • 举报
回复
这个可以吗?
//最大化窗口
    this->setWindowState(Qt::WindowMaximized);
#include "accesscontrolsystem.h" AccessControlSystem::AccessControlSystem(QWidget *parent, Qt::WFlags flags) : QMainWindow(parent, flags) { ui.setupUi(this); initialization(); validateUserLogin(); } AccessControlSystem::~AccessControlSystem() { } /*------------------------------------------- * * 初始化 * ---------------------------------------------*/ void AccessControlSystem::initialization() { this->showFullScreen(); this->setWindowFlags(Qt::Window | Qt::FramelessWindowHint); verifcation = new VerificationDlg(0); /*------------------------------------------- * 固定窗口大小 ---------------------------------------------*/ this->setFixedSize(this->geometry().size()); switchUser = new SwitchUserDlg(this); systemSetting = new SystemSettingDlg(this); cardIssuer = new CardIssuerDlg(this); rechargePostponed = new RechargePostponedDlg(this); cardDownload = new CardDownloadDlg(this); rateSetting = new RateSettingDlg(this); onlineMonitoring = new OnlineMonitoringDlg(this); ui.rightLogoLabel->setPixmap(QPixmap("Resources\\rightLogo.png")); } /*------------------------------------------- * * 验证用户登录 * ---------------------------------------------*/ void AccessControlSystem::validateUserLogin() { /*------------------------------------------- * 密码狗验证 ---------------------------------------------*/ //codeValidate.startValidate(); if (verifcation->exec() == QDialog::Accepted) { this->show(); this->setWindowFlags(Qt::Window | Qt::FramelessWindowHint); }else { exit(1); } } /*------------------------------------------- * * 退出系统 * ---------------------------------------------*/ void AccessControlSystem::on_close_clicked() { //写退出对话框 exit(1); } /*------------------------------------------- * * 最小化 * ---------------------------------------------*/ void AccessControlSystem::on_min_clicked() { this->showMinimized(); } /*------------------------------------------- * * 最大化 * ---------------------------------------------*/ void AccessControlSystem::on_max_clicked() { this->showNormal(); } /*------------------------------------------- * * 切换用户 * ---------------------------------------------*/ void AccessControlSystem::on_switchUserButton_clicked() { switchUser->exec(); } /*------------------------------------------- * * 系统设置 * ---------------------------------------------*/ void AccessControlSystem::on_systemSettingButton_clicked() { systemSetting->exec(); } /*------------------------------------------- * * 卡片发行 * ---------------------------------------------*/ void AccessControlSystem::on_cardIssuerButton_clicked() { cardIssuer->exec(); } /*------------------------------------------- * * 充值延期 * ---------------------------------------------*/ void AccessControlSystem::on_rechargePostponedButton_clicked() { rechargePostponed->exec(); } /*------------------------------------------- * * 卡片下载 * ---------------------------------------------*/ void AccessControlSystem::on_cardDownloadButton_clicked() { cardDownload->exec(); } /*------------------------------------------- * * 费率计算 * ---------------------------------------------*/ void AccessControlSystem::on_rateSettingButton_clicked() { rateSetting->exec(); } /*------------------------------------------- * * 在线监控 * ---------------------------------------------*/ void AccessControlSystem::on_onlineMonitoringButton_clicked() { this->hide(); onlineMonitoring->showFullScreen(); if (onlineMonitoring->exec() == QDialog::Rejected) { this->show(); } } /*------------------------------------------- * * 人事信息 * ---------------------------------------------*/ void AccessControlSystem::on_personnelQueryButton_clicked() { } /*------------------------------------------- * * 提取记录 * ---------------------------------------------*/ void AccessControlSystem::on_extractRecordButton_clicked() { }

16,173

社区成员

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

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