Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是Qt";什么';这是什么;跨平台按钮?_Qt_User Interface_Qt5_Qt4_Titlebar - Fatal编程技术网

是Qt";什么';这是什么;跨平台按钮?

是Qt";什么';这是什么;跨平台按钮?,qt,user-interface,qt5,qt4,titlebar,Qt,User Interface,Qt5,Qt4,Titlebar,根据“what's this”的说明,默认情况下,此按钮应出现在每个QDialog的标题栏中,至少在Microsoft Windows上是这样 当我使用KDE在Debian 9中进行测试时,我可以看到按钮(右边的“?”): 当我使用Gnome 3在Debian 9中测试时,我看不到按钮: 我在任何地方都没有发现该按钮跨平台的迹象(也没有找到兼容的平台) 我想知道: 它能在侏儒3上工作吗?(我必须更改Gnome 3设置吗?) 它在Windows7和10上工作吗 它在最新的macOs版本上有效

根据“what's this”的说明,默认情况下,此按钮应出现在每个QDialog的标题栏中,至少在Microsoft Windows上是这样

当我使用KDE在Debian 9中进行测试时,我可以看到按钮(右边的“?”):

当我使用Gnome 3在Debian 9中测试时,我看不到按钮:

我在任何地方都没有发现该按钮跨平台的迹象(也没有找到兼容的平台)

我想知道:

  • 它能在侏儒3上工作吗?(我必须更改Gnome 3设置吗?)
  • 它在Windows7和10上工作吗
  • 它在最新的macOs版本上有效吗
我正在使用Qt4.8.7,但我也对Qt5感兴趣,它是“它是跨平台的吗?”:不是真的。。。也许有办法让它工作,但它不会像在Windows上那样简单

由于窗口管理器,我在Linux环境中使用Qt时遇到了奇怪的怪癖

我知道在Qt5中,我在Linux环境中使用Qt4时遇到的许多怪癖都得到了解决,但是,我在Ubuntu 18.07上运行Qt5,当我启动了一个带有(或不带)标志设置的QDialog时,我也没有显示“What's This”按钮

当我在windows上编译并运行相同的代码(不设置windows标志)时,会显示What's This按钮

这里是我的系统信息:

  • Windows7Qt5.6.1
  • Ubuntu 18.04 LTS Qt 5.9.5
我可以稍后编辑这篇关于它是否适用于Windows 10的文章,尽管我认为它适用于Windows 10。 不幸的是,我没有访问macOS的权限来回答您关于它在那里如何工作的问题


请注意,如果您能够升级到Qt5,我强烈建议您使用。

您是否尝试通过
Qt::WindowContextHelpButtonHint
(++
Qt::WindowContextHelpButtonHint
)标志显式启用它?它在任何窗口上都能工作,但是没有关于macos或gnomeI的线索,它也尝试过,但没有帮助,但是我检查了默认标志是什么(
this->windowFlags()
),发现
Qt::WindowContextHelpButtonHint
已经启用。我还尝试了在
this->setupUi()
之前/之后设置标志,但没有帮助。谢谢您的回答。最后,我选择启用并使用它进入what's this模式。我可以通过隐藏Windows和KDE上的按钮来完善我的解决方案(因为标题栏中已经有了?按钮)。注意:此按钮的位置取决于操作系统(就像“确定”和“取消”按钮的位置一样),因此对您来说应该不会有问题。(续)我将此按钮的文本更改为?以匹配标题栏中存在的按钮。此解决方案的问题是,我假设只能创建一个“帮助”按钮,因此如果我要添加另一个打开完整“F1”帮助的按钮,我可能必须创建一个按钮。