Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Sancho_s_rancho от Февраль 27, 2010, 10:54



Название: setGeometry() для главного окна
Отправлено: Sancho_s_rancho от Февраль 27, 2010, 10:54
На Linux с KDE4 метод setGeometry ( 0, 0, 800, 600 ) перемещает окно в левый верхний угол. На платформе Windows с удивлением обнаружил, что заголовок окна не виден, т.е. заголовок не является частью окна и чтобы его увидеть надо сделать что-то чипа setGeometry ( 20, 20, 820, 620 ). Понятно, что это не выход. Кааким способом можно сказать программе отобразится в левом верхнем углу?


Название: Re: setGeometry() для главного окна
Отправлено: shirushizo от Февраль 27, 2010, 11:19
QWidget::move(0,0) работает нормально. В документации сказано:

QWidget обеспечивает несколько функций, позволяющих работать с геометрией окна. Некоторые из них работают только с клиентской областью окна (т.е. окном без рамки), другие включают и рамку. Различия осуществляются таким образом, чтобы покрыть наиболее используемые случаи применения прозрачности.

Включают рамку окна: x(), y(), frameGeometry(), pos() и move().
Не включают рамку окна: geometry(), width(), height(), rect() и size().

Как работает в "кедах" не знаю.


Название: Re: setGeometry() для главного окна
Отправлено: Sancho_s_rancho от Февраль 27, 2010, 12:07
Заменил на resize() и move().