0

我正在 Linux 上的 Qt 中编写一个程序 UI,它在 800x600 分辨率显示器上运行,显示来自另一个输入的 720x576 视频流。我希望能够在 800x600 显示器上显示此视频流,允许 80 像素的水平空间用于功能按钮和 24 像素的垂直空间用于状态栏以告知当前电池、其他视频信息等。

问题是我将 MainWindow 的大小调整为包含整个 800x600,在此范围内,我的其余小部件等有多个各自的水平和垂直布局,以及视频将流式传输的空间,但我的“状态栏”的高度(不使用 QtStatusBar 类,只是一个垂直布局框)虽然我的视频空间位于正确的 720x576 和 MainWindow 为 800x600,但它远不及应有的 24 像素。

当窗口调整大小时,我已将内容设置为缩放,并且我注意到只有当 MainWindow 为 818x618 时,MainWindow 中其他布局/小部件的像素的数学才会协调(视频空间变为 720x576,条形高度为 24 像素,并且边栏宽度 80 像素(根据需要)。

当按比例缩小时,视频空间的大小不会保持正确,它会变为 706x563 之类的东西;为了修正这一点,我更改了主布局中布局的空间获取比率,以将视频空间尺寸恢复为所需的 720x576。然后,这会导致状态栏的高度调整为大约 10 像素,而不是所需的并且应该是 24 像素。我已经删除了所有布局间距,因此从神秘消失的像素中删除了这个因素,我不确定还有什么可能导致这种情况。

这主要是 Qt Designer 的问题,涉及的编码不多,因此我不会提供任何代码进行分析。

是什么导致尺寸不加起来的尺寸问题?

4

0 回答 0