tamamen ebeveyn doldurmak sadece kimin çapalar çocuk dikdörtgen olması bir QML öğeye bir arka plan ayarlamak için basit yolu: Bu sadece o ana öğesi çalışır AncakBelirli olmayan bir boyutta qml öğesi için arka plan nasıl ayarlanır?
Item
{
width: 320
height: 240
Rectangle
{
id: background
anchors.fill: parent
color: "blue"
}
// other items
}
bir büyüklüğe (genişliğindedir ve yükseklik) tanımlandı.
Bunun için sabit bir boyut tanımlamadan bir kapsayıcıya sahip olmak isterim. Çocuklar sabit boyutlara sahip olacaklar, ancak çocuklar boyutlarını dinamik olarak değiştirebildiklerinden, ebeveyn kabının büyümesini ve büzülmesini sağlayacak şekilde olmasını istiyorum.
Çocukları bir sıraya sabitlerseniz, her şey arka plan dışında iyi çalışır.
Benzer bir konu hakkında a question a while ago vardı, ancak sorun, tüm çocukların yan yana görüntülenmek yerine örtüştüğüydi. Bu benim sorunum değil, çünkü onları bir sırada (veya bir RowLayout
kullanarak) sabitleyerek bunları doğru görüntüler.
Item
{
// I don't want a fixed size here
Rectangle
{
id: background
anchors.fill: parent
color: "blue"
}
RowLayout
{
anchors.fill: parent
Item
{
id: child1
anchors.left = parent.left
anchors.top: parent.top
width:100
height:100
}
Item
{
id: child2
anchors.left = child1.right
anchors.top: parent.top
width:120
height:120
}
// further children
}
}
Ancak, arka plan tüm çocukların sabit boyuta sahip rağmen ebeveyn, tanımlanmış bir boyuta sahip olmadığı için gösterilmez ve dün çocuğun sağ çapa belirtirseniz doğru olmak Ebeveynin, hala doğru şekilde görüntülenir. Sanırım bu, ebeveynin büyüklüğünün işleyici tarafından bilinmesi gerektiği anlamına geliyor.
"Ebeveyn kabının büyüyüp büzülmesini sağlamak istiyorum." Bu, bir konumlayıcının tarifi, örn. "Sütun" veya "Satır". İçerilen mizanpaja göre 'Öğe'yi boyutlandırmalısınız (aşağıdaki cevaba bakınız) veya yukarıda belirtilen konumlayıcı türlerini kullanmalısınız. – BaCaRoZzo