Внутри QWidget
Я положил QHBoxLayoutwith,
два QPushButton
и QLabel
. Я могу изменить геометрию QWidget
, который работает в качестве контейнера для макета, но не может изменить размер QPushButton
: вот мой кодQPushButton Geometry
void
QTitleBar::resizeEvent(QResizeEvent * event)
{
QSize size = event->size();
int widgetHeight = size.rheight();
int widgetWidth = size.rwidth();
std::cout << "resizeEvent h:" <<
widgetHeight
<< " w: " << widgetWidth << std::endl;
int layoutH = (int)((float)widgetHeight*(float)0.20);
std::cout << "resizeEvent h:" <<
layoutH
<< " w: " << widgetWidth << std::endl;
mapButton->setGeometry(0, 0, 120, layoutH);
titleWidget->setGeometry(0, 0, widgetWidth, layoutH);
// title->setGeometry(130, 0, widgetWidth - (2*130), layoutH);
// closeButton->setGeometry(widgetWidth - (2*130), 0, 130, layoutH);
//closeButton->setGeometry(0, 0, widgetWidth, layoutH);
}
там что-то не так?
ли положение кнопки получает изменяется при resizeevent? Только размер остается неизменным? А как насчет titlewidget? это изменение размера и перемещение, как в приведенном выше фрагменте кода? – ScarCode
нет, все не изменилось. Единственное, что меняется, это геометрия titleWidget. Может быть, QHBoxLayoutwith ошибка? – Blackbelt
проверьте размер для вашей карты, независимо от того, сдерживается ли она – ScarCode