QT rozdzielczość okienka zależna od rozdzielczości pulpitu

QT rozdzielczość okienka zależna od rozdzielczości pulpitu
Software
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 175
0

Witam, mam mały problem z QT, otóż problemem są domyśle rozmiary okienek nadawane w QT desinger, np na komputerze na którym mam rozdzielczość pulpitu 1920x1080 rozmiar okienka (przy uruchomieniu aplikacji ) 400x300 jest odpowiedni, ale gdy np używam komputera z rozdzielczością pulpitu 4k, to chciałbym, żeby moje okienko przy włączeniu aplikacji od razu miało zwiększony rozmiar np. 600x400 wie jak takie coś ustawić, żeby w zależności od rozdzielczości ekranu ostawiać różne rozmiary elementów? Zależało by mi , żeby to zrobić od razu w QT desingerze bez zbędnego kodu.

Dziękuję za Pomoc.

kq
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
0

Nie znam sposobu w designerze, ale zrobienie tego w konstruktorze widgetu jest trywialne.

mr_jaro
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Grudziądz/Bydgoszcz
  • Postów: 5300
0

Designerem też generujesz kod więc i tak go tworzysz czy ty ręcznie czy wyklikując ;)

Software
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 175
0

Witam, Zrobiłem jak pan poradził, dodałem do każdego okienka metodę która ustawia nowy rozmiar okna bazując na rozdzielczości pulpitu, niżej daję kod gdyby ktoś potrzebował

Kopiuj
void QT_ETH_SELECTOR_DIALOG::centerAndResize()
{
    /*Resize Window acording to Desktop Resolution*/
    QSize availableSize = qApp->desktop()->availableGeometry().size(); /*Desktop resolution*/
    U32 width  = availableSize.width()*0.25; /*Multiply by factor*/
    U32 height = availableSize.height()*0.25;
    QSize newSize( width, height );
    /*Set new Geometry*/
    setGeometry(
        QStyle::alignedRect(
            Qt::LeftToRight,
            Qt::AlignCenter,
            newSize,
            qApp->desktop()->availableGeometry()
        )
    );
    this->topLevelWidget(); /*Put Window to top of the screen*/
}

mr_jaro
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Grudziądz/Bydgoszcz
  • Postów: 5300
0
Software napisał(a):

Witam, Zrobiłem jak pan poradził

To jest forum programistów tutaj wszyscy jesteśmy na "ty" ;)

Azarien
  • Rejestracja: dni
  • Ostatnio: dni
0
  1. QT_ETH_SELECTOR_DIALOG to bardzo dziwna nazwa klasy.

  2. trzeba byłoby przetestować ten kod na komputerze z kilkoma monitorami: czy to availableSize odnosi się do aktualnego monitora (na którym wyświetlane jest okno programu) czy do wszystkich łącznie? z dokumentacji Qt to jednoznacznie nie wynika.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.