精美网站制作,厦门网站建设哪家好,为 wordpress 的评论链接加上 nofollow,网页设计与制作黑马程序员电子版QGridLayout一个方方正正的网格布局#xff0c;它适合排布那些横平竖直的多行列内容#xff0c;比如数字键盘#xff0c;就很适合用网格布局来处理1 成品示例2 代码实现数据键盘有5行4列#xff0c;每个按键占据一个网格#xff0c;其中有三个按键不太安分。0键要横跨两列…QGridLayout一个方方正正的网格布局它适合排布那些横平竖直的多行列内容比如数字键盘就很适合用网格布局来处理1 成品示例2 代码实现数据键盘有5行4列每个按键占据一个网格其中有三个按键不太安分。0键要横跨两列加号和回车键要竖跨两行。满足必须满足。代码实现QGridLayout *layout new QGridLayout; layout-setMargin(0); layout-setSpacing(0); //第一行 QPushButton *btnNumLk new QPushButton(Num LK); QPushButton *btnDiv new QPushButton(/); QPushButton *btnMul new QPushButton(*); QPushButton *btnSub new QPushButton(-); layout-addWidget(btnNumLk, 0, 0); layout-addWidget(btnDiv, 0, 1); layout-addWidget(btnMul, 0, 2); layout-addWidget(btnSub, 0, 3); //第二行 QPushButton *btn7 new QPushButton(7); QPushButton *btn8 new QPushButton(8); QPushButton *btn9 new QPushButton(9); layout-addWidget(btn7, 1, 0); layout-addWidget(btn8, 1, 1); layout-addWidget(btn9, 1, 2); //第三行 QPushButton *btn4 new QPushButton(4); QPushButton *btn5 new QPushButton(5); QPushButton *btn6 new QPushButton(6); layout-addWidget(btn4, 2, 0); layout-addWidget(btn5, 2, 1); layout-addWidget(btn6, 2, 2); //第四行 QPushButton *btn1 new QPushButton(1); QPushButton *btn2 new QPushButton(2); QPushButton *btn3 new QPushButton(3); layout-addWidget(btn1, 3, 0); layout-addWidget(btn2, 3, 1); layout-addWidget(btn3, 3, 2); //第五行 QPushButton *btn0 new QPushButton(0); QPushButton *btnDot new QPushButton(.); layout-addWidget(btn0, 4, 0, 1, 2); layout-addWidget(btnDot, 4, 2); //第四列 QPushButton *btnAdd new QPushButton(); QPushButton *btnEnter new QPushButton(Enter); layout-addWidget(btnAdd, 1, 3, 2, 1); layout-addWidget(btnEnter, 3, 3, 2, 1); this-setLayout(layout);看下效果好像和预期的不太一样是吧这是因为按钮的大小被限制了这样布局会老老实实的按照按钮的限制怎么帮按钮界限突破下呢直接看代码//批量修改按钮大小 QListQPushButton * allPButtons findChildrenQPushButton *(); for(auto btn : allPButtons) { if(btn-text() || btn-text() Enter) btn-setMinimumSize(60,120); else btn-setMinimumSize(60,60); btn-setMaximumHeight(6000); }findChildren很方便的获取所有按钮然后依次给按钮设置最小值和最大值。再来看界限突破后的样子这样就可以了