Qt Quick Donts Bulgarian/bg
[toc align_right="yes" depth="3"]
Български | English
Тази статия съветва какво да не правите или какво е желателно да не правите, докато разрапотвате прилжоения с Qt Quick. Съветите са създадени от разработчици, които са правили или са виждали тези чести грешки по време на работа. Моля, добавяйте вашите препоръки и помогнете на тази страница да се разрастне.
Да НЕ правим
Фиксирани размери и позиции
Тъй като Qt Quick може да работи на много видове устройства с различни резолюции, трябва приложението ви да се преоразмерява лесно. Дори и да се спрете само на резолюцията за дадена платформа (пр. 640x360 за Симбиян), в бъдеще може устройства с нея да бъдат пуснати с друга резолюция или да се наложи да поддържате друга платформа (пр 800x600 за Маемо 5 за N900).
Друго предимство на това да имате динамични размери е, че ако по-късно решите да промените размерите, позицията и размерите на всички елементи ще се променят автоматично. Примерът по-долу показва този проблем.
Когато центрирате елемент:
<br />Item {<br /> width: 200; height: 200 //&lt;— Най-външният елемент се преоразмерява до размера на QMLViewer<br /> Rectangle {<br /> x: 50; y: 50 //&lt;— НЕ ГО ПРАВЕТЕ<br /> width: 100; height: 100 //&lt;— НЕ ГО ПРАВЕТЕ<br /> color: "red&quot;<br /> // По-късно решавате да добавите анимация:<br /> Behavior on width { NumberAnimation { duration: 500 } }<br /> MouseArea {<br /> anchors.fill: parent<br /> onPressed: parent.width = 150;<br /> }<br /> }<br />}<br />
Горният пример вече няма да е центриран, когато се натисне на правоъгълника. Ако сложите 'x' на 25, анимацията няма да работи правилно.
В този случай, можете да използвате:anchors.centerIn: parent
на линия 4. Това ще изчисли центъра вместо вас и ще ви спесити главоболия, когато променяте ширинат и височината в бъдеще.
Qt Quick се грижи за мултиплатформения код вместо вас, но вие трябва да се погрижите, че приложението ви е пригодено за различни резолюции.
Вижте също