qsize

Mattepuffo's logo
Impostare la dimensione della finestra in Qt

Impostare la dimensione della finestra in Qt

Ho deciso di creare un programma in Qt senza usare l'interfaccia grafica; e quindi scrivendo tutto il codice.

La mia finestra deve avere queste caratteristiche:

  • essere centrata
  • partire grande l'80% della risoluzione dello schermo
  • avere una minima risoluzione

Ovviamente voi potete "levare" quello che non vi serve.

Mattepuffo's logo
QWidget a dimensione fissa

QWidget a dimensione fissa

Abituato a Swing ci sono rimasto un pò male nel vedere che QWidget a dimensione fissa non ha una funzione per impostare che la finestra non sia ridimensionabile.

Ovviamente con un piccolo sotterfugio si può ovviare al problema.

Basta impostare la dimensione, la minimumSize e la maximumSize alla stessa dimensione.

Quindi se si usa l'editor grafico possiamo modificare le relative proprietà, o modificare il file .ui in formato XML:

<widget class="QMainWindow" name="MainWindow">

  <property name="geometry">

   <rect>

    <x>0</x>

    <y>0</y>

    <width>703</width>

    <height>700</height>

   </rect>

  </property>

  <property name="minimumSize">

   <size>

    <width>703</width>

    <height>700</height>

   </size>

  </property>

  <property name="maximumSize">

   <size>

    <width>703</width>

    <height>700</height>

   </size>

</property>

.....

Se invece vogliamo fare tutto da codice possiamo fare una cosa del genere: