• 3457阅读
  • 2回复

[提问]qml-grid/row/column [复制链接]

上一主题 下一主题
离线feixiangxtu
 

只看楼主 倒序阅读 楼主  发表于: 2017-04-15
我在用grid或者其他布局控件时,比如设置几个Rectangle,但是Rectangle下面有子项比如Text/Label等,当我设置这些子项的x,y时,发现只有第一个Rectangle是成功的,其他都不能显示
请问,这几个控件里面是不是不能设置子项的x,y坐标,如果我想设置,除了一个一个Rectangle去设置外,是否有其他方法
谢谢!
代码片段如下:

Grid {        
    x:8; y:32        
   columns: 1      
  spacing: 2
        
  Rectangle {            
    id: rect1            
   color:"#333333"            
   width:100; height: 99
            
   Text {              
       id: text1                
       x: rect1.x + 8              
      y: rect1.y + 8            
     color:"#E0E0E0"                          
   text: qsTr("text1")            
  }      
}


  Rectangle {            
    id: rect2          
   color:"#333333"            
   width:100; height: 99
            
   Text {              
       id: text2                
       x:  rect2.x + 8              
       y:  rect2.y + 8            
       color:"#E0E0E0"                          
       text: qsTr("text2")            
    }      
  }
}
离线never_forget

只看该作者 1楼 发表于: 2017-04-15
Grid 布局是网格布局,如果你在该布局内使用任何形式的布局,决定定位,锚定位等,Grid 的布局将无法生效,同时,你自己的布局也将无法预料!所以,要么使用Grid布局,放弃其他的,要么,利用坐标布局,要么锚布局,楼主大大可要三思啊~!

离线feixiangxtu

只看该作者 2楼 发表于: 2017-04-15
谢谢你的答复。
我在想,Grid布局应该只影响里面的Rectangle 的坐标,而不会影响Rectangle里面的子项坐标,因为里面的子项坐标是以它的父Rectangle做基点的。
看样子只能老实用坐标或者anchor了。
再次感谢!
快速回复
限100 字节
 
上一个 下一个