84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
不用Designer设计界面,纯手写代码的话,怎样直接用GridLayout设计下面这样的布局? 我的问题主要是图中label_6和label_7怎样居中?
label_6
label_7
P.S. 我知道可以先用水平布局再用垂直布局,但是能否直接用GridLayout做出来? 另外:
setRowStretch(int row, int stretch) setColumnStretch(int column, int stretch)
这两个函数的意思是什么?我试了一下也没看出个所以然来……
setRowStretch 是设置该行行高所占总行高的比例。 举例来说,现在有一个4行的gridlayout,你想让他们的行高比为1:3:5:7,则这样设置:
setRowStretch(0, 1); setRowStretch(1, 3); setRowStretch(2, 5); setRowStretch(3, 7);
setColumnStretch是设置列宽的。
要实现居中,我一般会在控件左右两边加上两个弹簧控件,也就是QSpacerItem; 如果单纯用gridlayout来实现如图这种布局,我暂时没有好的办法,我通常的做法是使用表格布局,在需要居中的那一行先放一个水平布局,然后在水平布局里面放入需要的控件,并控制居中。
setRowStretch 是设置该行行高所占总行高的比例。
举例来说,现在有一个4行的gridlayout,你想让他们的行高比为1:3:5:7,则这样设置:
setColumnStretch是设置列宽的。
要实现居中,我一般会在控件左右两边加上两个弹簧控件,也就是QSpacerItem;
如果单纯用gridlayout来实现如图这种布局,我暂时没有好的办法,我通常的做法是使用表格布局,在需要居中的那一行先放一个水平布局,然后在水平布局里面放入需要的控件,并控制居中。