QDialog неизменяемого размера с фиксированным размером в QT?

Вы можете установить начальное значение в компоненте:

  startingyear = 1;

Переменная в вашем компоненте и представлении записываются не одинаково. Вот исправленное решение: https://stackblitz.com/edit/angular-8hx96x?file=src%2Fapp%2Fapp.component.ts

69
задан troyane 3 June 2014 в 08:04
поделиться

4 ответа

Я не знаю, попробовали ли Вы уже его, но QWidget::setFixedSize должен сделать то, что Вы хотите

52
ответ дан troyane 24 November 2019 в 13:39
поделиться

Необходимо изменить windowFlags диалогового окна и установить его на QT:: MSWindowsFixedSizeDialogHint.

Это только работает в окнах.

Для получения дополнительной информации посмотрите этот пример: http://doc.qt.digia.com/4.5/widgets-windowflags.html

8
ответ дан mavroprovato 24 November 2019 в 13:39
поделиться

Ошибка компиляции вы получаете, потому что вы пытаетесь передать QSizePolicy :: Policy в setSizePolicy (QSizePolicy) , но не существует неявного преобразования из QSizePolicy :: Policy (т.е. политику для одного измерения) до QSizePolicy (который представляет собой класс, содержащий, среди прочего, одну политику для каждого измерения (высота, ширина)). QSizePolicy в любом случае не работает с виджетами верхнего уровня (окнами).

setFixedSize () работает только в том случае, если вы заранее знаете размер диалогового окна (а обычно вы этого не делаете, что касается изменения размеров шрифта и языков). Вы можете сделать

window()->setFixedSize( window()->sizeHint() );

, но гораздо лучше использовать

window->layout()->setSizeConstraint( QLayout::SetFixedSize );

. Это позволяет макету определять размер диалогового окна, но не позволяет изменять размер, что, как я полагаю, именно то, о чем вы просили.

106
ответ дан 24 November 2019 в 13:39
поделиться
this->setFixedSize(this->width(),this->height());
23
ответ дан 24 November 2019 в 13:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: