diff --git a/src/main_win.cpp b/src/main_win.cpp --- a/src/main_win.cpp +++ b/src/main_win.cpp @@ -1,52 +1,52 @@ #include "mainwindow.h" #include <QApplication> -#include <QDesktopWidget> +#include <QScreen> #include <QTranslator> #include <qt_windows.h> int main(int argc, char* argv[]) { //int width = 504; //int height = 262; int width = 679; int height = 420; QApplication app(argc, argv); //загрузка русской локализации библиотеки Qt QTranslator translator; translator.load(QStringLiteral("qt_ru")); app.installTranslator(&translator); //создание главного окна MainWindow window; //масштабирование для случая увеличенного шрифта - HWND hwnd = (HWND)app.desktop()->winId(); + HWND hwnd = reinterpret_cast<HWND>(window.winId()); int dpi = GetDeviceCaps(GetDC(hwnd), LOGPIXELSY); if (dpi != 96) { width = (width * dpi) / 96; height = (height * dpi) / 96; } //шрифт окна такой же, как в системе подписи к иконкам LOGFONTW lf; SystemParametersInfoW(SPI_GETICONTITLELOGFONT, sizeof(lf), &lf, 0); int fh = qAbs((lf.lfHeight * 72) / dpi); QString fn((const QChar*)lf.lfFaceName, wcslen(lf.lfFaceName)); window.setStyleSheet( QString("*{ font-family: %1; font-size: %2pt; }").arg(fn).arg(fh)); //перемещение главного окна в центр экрана window.setMinimumSize(width, height); - QRect wg = window.geometry(); + QRect wg = window.frameGeometry(); wg.setSize(window.minimumSize()); - wg.moveCenter(qApp->desktop()->screenGeometry().center()); + wg.moveCenter(QApplication::primaryScreen()->availableGeometry().center()); window.setGeometry(wg); int exitCode = window.exec(); return exitCode; } //!приложение restruct