Статичные кнопки в форме Qt Desginer отображаются не так как мне надо
Сделал программу в Qt Desginer с компоновкой виджетов, всё хорошо работает.
Но как только я пытаюсь сделать что-то подобное, то у меня не получается.
Т.е. В работающей версии кнопки статичны в зависимости от расширения программы, пример:
Можно заметить, что кнопки остаются одного размера всегда.
К сожалению, как бы я не пытался, я не могу добиться того же результата, пересмотрел все настройки которые были, но не получается так сделать.
Вот пример, как получается сейчас:
Помогите пожалуйста, что я упускаю?
Работающая версия.ui
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>433</width>
<height>576</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget">
<property name="styleSheet">
<string notr="true">#centralwidget{background-color: rgb(17, 18, 21);}</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item alignment="Qt::AlignHCenter">
<widget class="QWidget" name="widget" native="true">
<property name="minimumSize">
<size>
<width>165</width>
<height>38</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(17, 18, 21);</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QLabel" name="label">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(151, 102, 255);</string>
</property>
<property name="text">
<string>Конвертация YML в JSON</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="widget_2" native="true">
<property name="minimumSize">
<size>
<width>421</width>
<height>104</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(23, 25, 33);</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="Line" name="line">
<property name="styleSheet">
<string notr="true">background-color: rgb(151, 102, 255);</string>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_2">
<property name="minimumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-image: url(:/file/images/yml3.png);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_3">
<property name="minimumSize">
<size>
<width>271</width>
<height>31</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>291</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(66, 71, 90);
color: rgb(162, 162, 162);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;</string>
</property>
<property name="cursorPosition">
<number>0</number>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="placeholderText">
<string>Название файла.yml</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_3">
<property name="minimumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-image: url(:/file/images/json3.png);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_2">
<property name="styleSheet">
<string notr="true">background-color: rgb(151, 102, 255);</string>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item alignment="Qt::AlignHCenter">
<widget class="QWidget" name="widget_3" native="true">
<property name="minimumSize">
<size>
<width>0</width>
<height>414</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(17, 18, 21);</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QVBoxLayout" name="verticalLayout_4">
<property name="spacing">
<number>13</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QPushButton" name="addFile">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#addFile {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#addFile:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Выбрать файл</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="convert">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#convert {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#convert:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Конвертировать</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="add">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#add {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#add:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Добавить Json в Базу даных</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item alignment="Qt::AlignHCenter">
<widget class="QLabel" name="label_4">
<property name="minimumSize">
<size>
<width>200</width>
<height>200</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>9999</width>
<height>9999</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-image: url(:/file/images/gnvclogo.png);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="info">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#info {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#info:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Дополнительная информация</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="../qrc_files/file.qrc"/>
</resources>
<connections/>
</ui>
Не работающая версия .ui:
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>443</width>
<height>592</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget">
<property name="styleSheet">
<string notr="true">#centralwidget{background-color: rgb(17, 18, 21);}</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QWidget" name="widget" native="true">
<property name="minimumSize">
<size>
<width>165</width>
<height>38</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(17, 18, 21);</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QLabel" name="label">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(151, 102, 255);</string>
</property>
<property name="text">
<string>Конвертация YML в JSON</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="widget_2" native="true">
<property name="minimumSize">
<size>
<width>421</width>
<height>104</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(23, 25, 33);</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="Line" name="line">
<property name="styleSheet">
<string notr="true">background-color: rgb(151, 102, 255);</string>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_2">
<property name="minimumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-image: url(:/file/images/yml3.png);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_3">
<property name="minimumSize">
<size>
<width>271</width>
<height>31</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>291</width>
<height>16777215</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(66, 71, 90);
color: rgb(162, 162, 162);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;</string>
</property>
<property name="cursorPosition">
<number>0</number>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="placeholderText">
<string>Название файла.yml</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_3">
<property name="minimumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>61</width>
<height>60</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-image: url(:/file/images/json3.png);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_2">
<property name="styleSheet">
<string notr="true">background-color: rgb(151, 102, 255);</string>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QWidget" name="widget_3" native="true">
<property name="minimumSize">
<size>
<width>0</width>
<height>414</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(17, 18, 21);</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QVBoxLayout" name="verticalLayout_4">
<property name="spacing">
<number>13</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QPushButton" name="addFile">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#addFile {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#addFile:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Выбрать файл</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="convert">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#convert {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#convert:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Конвертировать</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="add">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#add {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#add:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Добавить Json в Базу даных</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_4">
<property name="minimumSize">
<size>
<width>200</width>
<height>200</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>9999</width>
<height>9999</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">background-image: url(:/file/images/gnvclogo.png);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="info">
<property name="minimumSize">
<size>
<width>211</width>
<height>31</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">#info {
background-color: rgb(151, 102, 255);
/*background-color: rgb(0, 139, 247);*/
color: rgb(255, 255, 255);
border-radius: 15px; /* Задайте радиус, чтобы сделать края овальными */
padding: 2px;}
#info:hover{
background-color: rgb(164, 205, 217);
}</string>
</property>
<property name="text">
<string>Дополнительная информация</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</widget>
<resources/>
<connections/>
</ui>
Пояснение вопроса:
- На работающей версии, все кнопки остаются одного размера всегда, при этом сдвигаются в середину, когда происходит масштабирование окна (2-й по счёту скриншот).
- А вот вторая версия, не рабочая - кнопки всегда увеличиваются по ширине окна, в скринах которые я предоставил это отчётливо видно. (4-й по счёту скриншот, окно справа)
Нужно сделать так, чтобы на (четвёртом скриншоте) кнопки правого окна оставались одинакового размера и сдвигались к центру во время масштабирования окна.