Általában, amikor a skálázhatósággal foglalkozom, ez egy okostelefonos környezetben történik, amely sokkal változékonyabb, mint az Ön helyzete, de szerintem ugyanazok az elvek érvényesek.
Általánosságban elmondható, hogy szerintem ne próbáld meg a teljes felhasználói felület logikai pixelarányát skálázni. Szerintem maradjon 1:1, ahol egy logikai képernyőegység (pixel) a QML-ben egyenlő egy logikai képernyőegységgel (pixel) a QML-en kívül.
Ennek fő oka az, hogy általában legalább két különböző képarányt használ: az Ön esetében a 800x600 4:3, az 1280x720 pedig 16:9. Ha a képarányok nem egyeznek, akkor vagy ki kell vágnia a tartalmat, vagy fekete sávokat kell megjelenítenie az oldalakon, ha a felhasználói felület maga választja az egyik vagy másik képarányt, és megpróbálja mindkettőn a teljes képernyőt megjeleníteni (feltéve, hogy nem szeretné kiterjeszti a felhasználói felület képét bármelyik irányba – aminek szinte soha nincs értelme egy felhasználói felület esetében).
Általában tehát a RowLayout és ColumnLayout funkciót használom úgy, hogy a fillWidth és a fillHeight megfelelően be van állítva magán a felhasználói felületen, hogy a felhasználói felület megfelelő belső területei megnyúljanak, hogy a képernyő méretének változásával kisebb-nagyobb hely legyen. Ugyanaz az elv, amelyet a webalkalmazásokban használnak a különféle ablakméretek elhelyezésére.
Ennek egyik nagyszerű módja az, hogy az alkalmazást az asztali környezethez (Mac vagy Windows) építi, és egyszerűen átméretezi az ablakot, és megnézi, hogyan alkalmazkodik az elrendezés a különböző képernyőméretekhez. Ha már racionálisan elrendezi a mérettartományhoz, amellyel meg kell küzdenie, akkor építheti a célkörnyezethez, és jól kell működnie.
11.09.2020