TouchGFX利用PixelDataWidget绘制曲线(二)

就是菜啊!       

         在上一篇文章中已经讲过如何利用PixelDataWidget控件绘制简单的函数曲线啦,但是遗留了一个小bug,不知大家是否发现了呢?就是添加PixelDataWidget控件是在ScreenViewBase中添加加的呦,一般情况下,俺们是不动这些viewbase文件的呀!毕竟人家是可读的属性啊!当你在viewbase文件中添加了代码,等你回到Touchgfx designer中运行一下,你就会失了智,想要砸电脑,(毕竟辛辛苦苦写的代码,一键运行,变成了一键清除了),这时你viewbase中自己添加的代码已经被你消灭了!这时,一个新的idea出现啦!来,学起来!

升级版方案:

        大概的思路是这样的:

Touchgfx Designer部分:

同样的,还是建立一个Screen,然后添加三个按钮,然后在该Screen中添加一个Action(动作,类似如按钮点击这样的一个动作吧!)。

大家一定要鼠标点击到红色圈一处啊,然后再去红色圈二处添加一个Action,这个动作的名字你可以自己起,我这里就用action1,这个action的配置如下:

        这个Description里面可以不添加东东,但是下面这个type里面可要添加东东啊(当然,若是其他应用场景,可根据自己需要来确定该处是否填写),这个地方的type啊,就是咱们action接收一个啥类型的参数,我们这个应用中呢,接收的应该是个 const touchgfx::AbstractButton&类型的参数,也就是咱们的按钮ID吧(俺也不太明白!)。

 

     动作俺们已经弄好了,下面就开始绑定相应按钮啦!把三个按钮点击后,执行的动作都添加为action1,同时还要给咱们的action1()的参数赋值哦,具体操作如下所示:

 剩下的几个按钮都像上面这样配置就行啦,只用改动Choose clicked source这一栏,其余的都不要改动哈!此时,咱们就可以点击运行,然后生成代码啦。

具体这个Action动作长啥样呢!我们来瞅一下!(要是不好看,你可以给他改个名哈!)

在俺们的screenviewbase.cpp文件中生成了一个函数哦!不过是个空家伙哈!

在screenviewbase.hpp文件中它是个虚函数哦!

 在buttonCallbackHandler中,检测到有按钮摁下的时候,咱们就使用action1方法哈!当然现在是空空的,后面就是满满呦!别急,后面会有的。来看一下咱们的buttonCallbackHandler吧!

接下来就使用VS大法来添加你的PixelDataWidget控件啦!

VS大法:

打开你的screenView.hpp文件

 添加如下代码段:

 解释一下,圈1呢,是重写咱们的action1这个方法哈,毕竟空空的方法啥都做不了哈,咱们升级一下下!

圈2:就是咱们要声明一个PixelDataWidget控件对象哈!没有声明对象,那你还玩啥呢?

接下来,打开咱们的screenview.cpp文件,重写action,以及添加pixeldatawidget对象到view中,具体操作如下所示:

 

重写action1啦 

 

 里面的内容在上一篇文章中有哈!不晓得的小伙盘往前瞅瞅看哈!

项目效果展示:

       因为这一片文章主要解决的是在viewbase中写的代码会被覆盖掉的问题,所以呢!实验结果还是一样的啦!只是你再也不用在viewbase中添加代码啦!

做了一个丑丑的直方图,大家瞅瞅就行了哈!

touchgfx

对啦!本人能力有限哈!文中有啥讲错 的地方,还请各位大神赐教哈!

猜你喜欢

转载自blog.csdn.net/songjun007/article/details/107624414