除了通过组态拖动控件,还可以通过代码动态添加控件。下面将讲解如何进行动态添加控件。
可以先将需要的控件通过组态的方式进行设计,当设计完成后会自动生成代码,如下所示
将上面生成的代码通过按键触发,变量触发或者是其他的方式进行生成。代码如下所示
void Frm06::wMButton5_clk_cb(uint16_t code, LvEvent e) {
/*wMButton5(功能键)的点击事件*/
STTImage *wMImage2;
wMImage2 = new STTImage(p_rt, this, "wMImage2");
wMImage2->setMainArg(294, 40, 77, 74);
wMImage2->addStateImg("0", "./images/img17361487244280_77X74R0.png");
this->refreshAll();
}
案例中通过按钮点击,生成一个图片控件。在控件设计完成后,需要调用this->refreshAll()
,对页面进行刷新。
- 对于用到了图片的设计控件,需要保证图片能正常获取到。
- 最后一定要通过 refreshAll 进行刷新。
- 需要new的指针最好是作为全局指针,这样在页面关闭时释放该指针,避免内存泄露