【问题标题】:Set alignment of QGroupBox title设置 QGroupBox 标题的对齐方式
【发布时间】:2016-02-10 17:24:33
【问题描述】:

我尝试以编程方式设置 QGroupBox 标题的对齐方式。根据documentation,我尝试按以下方式进行:

MainWidget::MainWidget (QWidget * parent)
            : QWidget (parent)
{
    setWindowTitle (tr ("QGropBox Title Alignment issue") );

    QGroupBox * group = new QGroupBox ("Group Title", this);
    QVBoxLayout * layoutTop = new QVBoxLayout ();
    layoutTop->addWidget (group);
    group->setAlignment (Qt::AlignHCenter);
    this->setLayout (layoutTop);
}

但我得到了意想不到的结果,并且标题与分组框的左侧对齐。

我对环境的这种行为:

  • Debian 9.0 (sid);
  • Qt 5.5.1(从存储库安装);
  • XMonad DE.

我在下一个环境中的行为相同:

  • Ubuntu 15.10;
  • Qt 5.4(使用离线安装程序手动安装);
  • KDE。

但是!如果我使用从存储库(Qt 5.4.2)安装的 Qt,默认情况下标题将与中心对齐。但是如果我改变 align to left 它不会改变。

我尝试通过 Google 找到一些解决方案,但我没有找到类似的问题,这是不好的迹象,通常这意味着我做错了什么。

所以我的问题是:为什么我不能通过对齐组框标题来管理。

【问题讨论】:

    标签: c++ linux qt


    【解决方案1】:

    在 Qt 5.5.1 中,当计算标题的矩形时未考虑 QGroupBox 标题对齐时,某些视觉样式似乎存在错误:QTBUG-49068: QGroupBox title does not follow alignment with fusion style

    您可以从 git 存储库下载最新版本,构建它并检查错误是否已修复(已用于 Fusion 样式:qt commit 139953)。

    如果 bug 仍然存在,我认为你应该向 Qt bugtracker 提交问题。

    【讨论】:

    • 我用不同的-style 选项尝试了我的示例。 fusiongtk 存在问题,但 windows 不存在。
    猜你喜欢
    • 2016-10-30
    • 1970-01-01
    • 2011-02-13
    • 2019-03-01
    • 1970-01-01
    • 2013-04-18
    • 2012-04-28
    • 1970-01-01
    • 2011-03-01
    相关资源
    最近更新 更多