【问题标题】:Make a Toolbar have a grid layout使工具栏具有网格布局
【发布时间】:2014-06-24 05:44:32
【问题描述】:

我想让QToolBar 停靠在QMainWindow 左侧时有 3 列按钮,但停靠在主窗口顶部时有 1 行。这可能吗?

我尝试过使用带有自定义布局的 QToolBar,但 QToolBar 的正常调整大小行为不起作用(当展开按钮太小时,不会将小部件隐藏在展开按钮后面)。无法使用的展开按钮没什么大不了的,但更大的问题是自定义布局会阻止主窗口小于工具栏。

【问题讨论】:

    标签: c++ qt qt5


    【解决方案1】:

    通过将每行工具按钮放入QHBoxLayout,将该布局放入空的QWidget,并为每一行调用toolBar->addWidget( widget ),我能够获得我想要的行为。当工具栏安装在左侧时,这给了我一个网格工具栏,当安装在顶部时,这给了我一个水平条。

    【讨论】:

    • 很高兴你做到了!你能分享一些关于它的图片吗?
    • 抱歉,我不认为我可以分享任何图片。但我可以描述它的行为方式。工具栏停靠在左侧时,是一个包含 3 列和多行的网格。当我垂直收缩窗口以致工具栏没有足够的空间时,按钮行将开始消失在正常的 QT“扩展”按钮后面。当您单击展开按钮时,隐藏的行将出现,虽然看起来有些奇怪,因为它们仍然被分组为 3。
    • 当工具栏停靠在顶部时,它的外观和行为几乎与普通工具栏完全相同,唯一的例外是当主窗口水平缩小时,按钮将开始以 3 个为一组折叠, 而不是一次 1 个。
    猜你喜欢
    • 1970-01-01
    • 2019-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-23
    • 1970-01-01
    相关资源
    最近更新 更多