QLabel
を垂直方向に中心に置くことに少し問題があります。QHBoxLayout
。私のコードの関連部分は以下の通りです:ラベルを縦に横向きに配置する
QFrame* topBar = new QFrame();
topBar->setStyleSheet("background-color: #2c3d50;border-bottom: 3px solid #2c92b6;");
topBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
topBar->setFixedHeight(24);
QHBoxLayout* topBarLayout = new QHBoxLayout();
QLabel* label = new QLabel("MSFT");
label->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Preferred);
label->setStyleSheet("font-size: 15px;font-weight: bold;border: 0px;");
label->setMinimumHeight(15);
topBarLayout->addWidget(label);
topBar->setLayout(topBarLayout);
topLayout->addWidget(topBar);
私の地元の目標は、ラベルが垂直を中心に持ってです。私が試したもの:
Qt::AlignVCenter
- 影響を与えなかったがQSizePolicy::PreferredSize
とQSizePolicy::Expanding
はラベルが縦に私はそれを変更する親- の高さに自由に膨張することを望んだ
minimumHeight
/fixedHeight
、なしに縮小される原因となりましたminimumHeight
またはpadding/margin:
を追加します。これは、QLabel
を下向きに移動し続けます。
私の究極の目標は、整列(などを最大化、クローズ例えばキャプション、)ラベルとボタンで、固定の高さと可変幅のバー(写真ではその暗い青色のもの)を作成することですバーの幅にかかわらず、両側にあります。
インターネットでは、を垂直方向に中心に追加すると問題が解決する可能性がありますが、このバーには多くのコンポーネントが追加されるため、この「解決策」は非常に実用的ではありません。
TL:DR:Label
(または単にテキスト)を水平レイアウト内でどのように垂直に整列させますか?
G.M @。私の郵便局の状態では、整列プロパティを使用することはあまり役に立ちませんでした。結果は図に示されています。 – user35443
@GCyrillusこれはQtですが、HTMLは生成されず、スタイルシートは上記のコード抜粋に含まれています。 – user35443
'setSizePolicy'への呼び出しを単に削除するとどうなりますか? –