我正在开发一个Qt项目,并且我注意到一些GUI窗体的持久性问题。该表单在KDE(底部图片)和Windows上看起来很好,但是当应用程序在任何基于GNOME3的(如Unity或GNOME3本身)上运行时,窗体的某些部分将从视图中隐藏。 (顶部图片,按降序排列的单选按钮下方的所有内容都被截断)如果需要扩展Qt接口
问题似乎在于Qt布局如何处理大字号。如果用户使用正常大小的系统字体(< = 10pt),一切正常。如果他们使用较大的字体,表单不够大以容纳所有内容。受此错误影响的其他形式仅仅是拥挤的,但并不像严格控制越界那么严重。如果放大对话框,布局不希望调整自身大小以利用新空间。有没有简单的方法来做到这一点,或者我需要硬编码吗?最初代码阻止了在运行时调整大小的对话框,但恢复该功能并没有修复该错误。即使对话框可以扩展,但问题在于布局不会随着它扩展。
到目前为止,我已经使所有受影响的表单都过大来弥补这个bug,但看起来奇怪的是,对话框要比在Windows和KDE系统中字体大小合适的KDE系统要大得多。有没有办法导致受影响的对话框/布局自行调整大小,以便在运行时正确安装?如果是这样,当部分GUI超出界限时,程序如何检测它?我宁愿不强制某种字体大小(由于视觉问题,有些人可能更喜欢大字体)。
在此先感谢您的帮助。
我不知道你是如何指定你的布局的,但是如果它不能随着对话框扩展,这听起来像是一个布局问题,至少在所有控件都可见的地方。 –
Caleb Huitt最有可能是正确的。这里的布局使用有些问题。显示你如何构建UI。 – divanov