Chyba s Rozloženie.vertikálne zarovnanie bar vo vertikálnom paneli .program súboru

0

Otázka

Pozadie: mám strane projekt, na ktorom pracujem na tom to bude a "priebežný" projekt, ktorý budem aktualizovať, ako som sa učiť sa a rásť ako programátor. Keďže tento projekt sa byť stále so mnou, ja som sa chcel dozvedieť, ako vytvoriť GUI, ktoré môžu byť jednoduché, ale tiež dáva mi schopnosť naozaj prispôsobiť GUI raz som sa cítiť naozaj pohodlne. Po pocit, ohromený s voľby ja som pristál na PySide6 a POŽIADAVKY, ale ja som sa dostanete do problému so POŽIADAVKY súbor.

Tutorial som takto je Python-PROGRAM integrácie (https://doc.qt.io/qtforpython/tutorials/qmlintegration/qmlintegration.html) a som pomocou .py a .požiadavky súbory prepojené v spodnej časti tutoriálu stránke. Pre IDE, ak je to dôležité používam Pycharm a majú PySide6 balík pridá do projektu, ako aj PROGRAM Editor, plug-in.

Problém: problém, ktorý mám s .program súboru. Z nejakého dôvodu, nie je rozpoznávanie vertikálny pruh použiť v dvoch-dimenzionální vlajky do centra moje RowLayout vertikálne a horizontálne. Keď som sa vznášajú moje kurzor nad vertical bar mám tip, hovorí, že jedným z viacerých rôzne symboly ako čiarky, zátvorka, alebo traky boli očakávané, ale namiesto toho dostal '|'.

ColumnLayout {
    id: rightcolumn
    spacing: 2
    Layout.columnSpan: 1
    Layout.preferredWidth: 400
    Layout.preferredHeight: 400
    Layout.fillWidth: true

    RowLayout {
        Layout.alignment: Qt.AlignVCenter | Qt.AlignHCenter

        Button {
            id: red
            text: "Red"
            highlighted: true
            Material.accent: Material.Red
            onClicked: {
                leftlabel.color = bridge.getColor(red.text)
            }
        }
    }

Mám pocit, že som skontrolovať všade Reddit, pretečenie zásobníka, dokumentácia o QT stránky, ale nemôže nájsť niekoho iného, že je skúsený to.

qml qt
2021-11-21 02:11:10
1

Najlepšiu odpoveď

0

Hlavný problém je, že nastavenie Qt.AlignVCenter v dieťa ColumnLayout nemá zmysel, pretože Rozloženia len česť zarovnanie orthogonal na smer ich rozloženie. Tak, nastavenie vertikálne zarovnanie na vertikálne orientované usporiadanie nebude nič robiť.

V tomto prípade, keďže ste zjednodušený príklad (konkrétne, všetky vaše rozloženia mať len jedno dieťa), nepotrebujete žiadne rozloženia na všetkých. Namiesto toho, by som previesť ColumnLayout na Položku, a potom kotvy Tlačidlo v strede to, ako je tento:

Item {
    id: rightcolumn

    Layout.columnSpan: 1
    Layout.preferredWidth: 400
    Layout.preferredHeight: 400
    Layout.fillWidth: true

    Button {
        id: red
        anchors.centerIn: parent
        text: "Red"
        highlighted: true
        Material.accent: Material.Red
        onClicked: {
            leftlabel.color = bridge.getColor(red.text)
        }
    }
}
2021-11-22 16:03:02

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................