Как инициализировать позицию дескриптора сплиттера в Qt?

Я хочу инициализировать положение ручки разделителя, как показано ниже, а не посередине. Я не могу установить его в свойстве.

введите описание изображения здесь

Как это решить?

Спасибо за помощь.

6

Решение

Ты можешь использовать QSplitter::setSizes в этом, почему переместить ручку:

ui->splitter->setSizes(QList<int>() << 100 << 200);
9

Другие решения

Вы должны установить горизонтальное растяжение для двух виджетов в разделителе. Например, установив горизонтальное растяжение левого виджета на 1 и правильный виджет для 2правый виджет получает ширину в 2 раза больше левого:

leftWidget->sizePolicy().setHorizontalStretch(1);
rightWidget->sizePolicy().setHorizontalStretch(2);

Другим возможным способом является использование QSplitter::setSizes,

9

использование QSplitter::setStretchFactor(int index, int stretch) где index позиция соответствующего виджета.

0
По вопросам рекламы [email protected]