最近遇到一个项目需要用到配置界面,界面有很多lable,这时如果一个个去写或者拖动其实特别麻烦,特别出现bug一个个去比较其实是比较痛苦的一件事。所以我就咨询了我的项目导师,学到一个特别有用的小技巧。下面我以QT为例(ps:wxWidgets我已经做过了)。
首先我们新建一个栅栏布局,设置需要得行和列();设置宽度大小和我们需要的属性。运行看效果:
void Widget::SetUI()
{
QGridLayout *grLayout = new QGridLayout();
grLayout->setColumnStretch(2, 0);
grLayout->setRowStretch(40, 0);
QLabel *TempLabel = NULL;
QLineEdit *TempLineEdit = NULL;
//
TempLabel = new QLabel("标签1");
TempLabel->setFixedWidth(70);
grLayout->addWidget(TempLabel);
TempLineEdit= new QLineEdit("行编辑器1");
TempLineEdit->setEnabled(false);
grLayout->addWidget(TempLineEdit);
setLayout(grLayout);
}
看看是否还需要添加其他属性。如不需要,则开始我们得骚操作了。
复制我们实现代码布局的代码到notepad++;也可以直接在vs上或者其他工具(只要你的屏幕够长)。
打开excel,在我们需要的第一个数值按住Ctrl键,当出现+号时向下拖动。得到递加的数组,如图所示:
该操作主要时测试时需要敲1-10的数字,如果很多数字也是很麻烦的呦。(顺便记录一下)复制该列数值到notepad++等工具下,复制多行代码布局;按住ALT键,用鼠标左键选中区域,替换我们需要的label和行编辑器的文字。ps(大多时候我们我国有结构体等注释需要配页面,那岂不是只需要对齐文字就搞定…)
如下图所示:
接下来就是复制我们的布局代码了;使用同样的方法。安装ALT键选中区域后替换我们需要的文字
这个操作需要屏幕越长越好哈,还有最好不要敲空格;对齐会很麻烦;多使用TAB键;
然后把我们的代码复制回去。
效果出来了。是不是感觉栅栏布局连对齐都帮我们做了很nice呢???
用好工具对我们的工作效率提升会很大哦!!!