Important: Please read the Qt Code of Conduct -

Label Text with two different alignments

  • HI,

    im currently struggling with a simple issue that i cant get solved. What i want to do is to list some items and their numerical value vertically in QLabels e.g.
    x: 5
    y_foo: 10
    bar_x: 77.1

    However i would like to achieve that the text are aligned on the left and the numbers are aligned on the right. Is there a way to do this?
    I tried using Layouts, but i have problems understanding how the different spacing methods all work.

  • Lifetime Qt Champion


    I would go with a QFormLayout. It looks like what you are trying to get to.

  • @Infestor
    You could use a QGridLayout with two columns. You shouldn't need any "spacing methods" then.

  • @SGaist
    The trouble with QFormLayout is that it has inbuilt alignments according to overall style, being set for different windowing systems/styles. The OP specifies left alignment for the left-hand labels; but if you look at some styles align these right. That's why I suggested QGridLayout.

    Oh, I see there is QFormLayout::setLabelAlignment() to alter that. Well, up to the OP. Note that QFormLayout is strictly intended for only two columns, QGridLayout you can have however many you want.

Log in to reply