<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Impostare una dimensione di base per QMainWindow]]></title><description><![CDATA[<p dir="auto">ciao!</p>
<p dir="auto">sto cercando di impostare una dimensione di base dell'80% della risoluzione dello schermo.<br />
però deve essere possibile ridimensionare la finestra fino ad un minimo.<br />
quindi non posso usare il setFixedSize.<br />
ho provato così:</p>
<pre><code>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
    QScreen *screen = QGuiApplication::primaryScreen();
    QSize size = screen-&gt;availableGeometry().size();
    int width = size.width();
    int height = size.height();
    width *= 0.8;
    height *= 0.8;
    QSize newSize( width, height );
    this-&gt;setBaseSize(newSize);
    this-&gt;setMinimumWidth(800);
    this-&gt;setMinimumHeight(600);
}
</code></pre>
<p dir="auto">ma a quanto pare quel setBaseSize non funziona.<br />
come gli posso impostare la dimensione calcolata??</p>
]]></description><link>https://forum.qt.io/topic/96074/impostare-una-dimensione-di-base-per-qmainwindow</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 09:04:12 GMT</lastBuildDate><atom:link href="https://forum.qt.io/topic/96074.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 29 Oct 2018 15:34:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Impostare una dimensione di base per QMainWindow on Mon, 29 Oct 2018 16:16:38 GMT]]></title><description><![CDATA[<p dir="auto">ciao!</p>
<p dir="auto">nel frattempo ho trovato questa soluzione (ho anche moltiplicato direttamente):</p>
<pre><code>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
    QScreen *screen = QGuiApplication::primaryScreen();
    QSize size = screen-&gt;availableGeometry().size() * 0.8;
    setGeometry(
                QStyle::alignedRect(
                    Qt::LeftToRight,
                    Qt::AlignCenter,
                    size,
                    QGuiApplication::primaryScreen()-&gt;availableGeometry()
                    )
                );
    this-&gt;setWindowTitle("QRsync");
    this-&gt;setMinimumWidth(800);
    this-&gt;setMinimumHeight(600);
}
</code></pre>
<p dir="auto">sembra funzionare!</p>
]]></description><link>https://forum.qt.io/post/489805</link><guid isPermaLink="true">https://forum.qt.io/post/489805</guid><dc:creator><![CDATA[fermatqt]]></dc:creator><pubDate>Mon, 29 Oct 2018 16:16:38 GMT</pubDate></item><item><title><![CDATA[Reply to Impostare una dimensione di base per QMainWindow on Mon, 29 Oct 2018 15:52:56 GMT]]></title><description><![CDATA[<ol>
<li>puoi moltiplicare <code>QSize</code> direttamente, no serve scomporre larghezza e altezza</li>
<li>per fare cio' che vuoi non devi impostare <code>setBaseSize</code> ma salvare <code>newSize</code> in una variabile <code>private:</code>, reimplementare <code>sizeHint</code> e ritornare quella variabile</li>
</ol>
]]></description><link>https://forum.qt.io/post/489796</link><guid isPermaLink="true">https://forum.qt.io/post/489796</guid><dc:creator><![CDATA[VRonin]]></dc:creator><pubDate>Mon, 29 Oct 2018 15:52:56 GMT</pubDate></item></channel></rss>