Qt Creator窗口布局

    使用Qt Creator对窗口进行布局,相对于使用C++代码布局而言,直观快速,是首选的方法。本文重点在于叙述使用Qt Creator对窗口进行布局的一些技巧。

1 Layouts

    在Qt Creator左侧的控件列表中,有4种布局控件,而在其上方,有对应的布局按钮,如下图所示:

Qt Creator窗口布局_第1张图片

                                                           图1 布局控件&布局按钮

1.1 布局控件的使用方法

    和QPushButton控件的使用方法一样,可以使用鼠标将布局控件拖放到主界面中,然后将其它控件拖放到布局控件中即可。如下图所示,在QGridlayout中布局了一个QListView和一个QPushButton:

Qt Creator窗口布局_第2张图片

                    图2 QGridLayout

1.2 布局按钮的使用方法

    实现图2效果的另一个方法是,通过工具栏的按钮实现。先往主界面中拖放一个QListView控件和一个QPushButton控件,然后同时选中它们,这时候上方的布局按钮呈可用的状态,点击对应的按钮即可实现对应的布局,甚至是实现窗口拆分(《QSplitter使用方法》),如下图所示:

Qt Creator窗口布局_第3张图片

                        图3 布局按钮

2 子窗口/控件自适应调整大小

    使用第1章的方法可以实现对控件的局部布局,但是控件/子窗口的大小并不会随着主窗口大小的改变而改变。根据参考资料[3]的说明,要想实现控件大小的自适应调整,需要设置顶层布局。

    使用Qt Creator创建一个GUI应用程序时,默认情况下会有一个顶层的QWidget控件,其它所有的控件或者子窗口都是布局在其中的。而这个顶层QWidget的布局状态为“未布局”,如下图所示:

Qt Creator窗口布局_第4张图片

          图4 QWidget布局状态(Qt Creator右上角)

    为了使得在QWidget中的其它控件能随着QWidget大小的改变而改变,需要对这个QWidget进行布局。方法是:选中QWidget主窗口,然后根据1.2小节的方法,点击图3的不同布局按钮即可!

3 布局比例

    默认情况下,布局的各个控件区域(通常大于或者等于控件的实际大小)都是等比例分布的,这可以通过设置下面的参数来改变

Qt Creator窗口布局_第5张图片

                              图5

    说明:第1个值是第1个控件区域的比例(为0则表示控件区域的大小和控件实际的大小一致),第2个值为第2个控件区域的比例。


参考资料

[1]QT控件大小随窗口变化

[2]QT界面大小自动变化

[3]Qt Creator 窗体控件自适应窗口大小布局

你可能感兴趣的:(Qt)