QGC地面站二次开发教程三

        上次我们进行了地面站的图标、按钮等的删减,这次我们来开始添加一些我们喜欢的页面或者按钮。(这几天在家陪家人,不知不觉时间都过了这么久,还得去陪陪女票,更新的有点慢,抱歉,不过有问题加入专业的群,可以随时有人来解答你的疑惑)
         我打算是在QGC最上面的栏目增加一个按钮,单击它可以出现一些自己喜欢的图案或者文字。例如可以增加一个和Analyze一样的图标(自己也可以换),单击它就可以显示一个文本框。如下图

QGC地面站二次开发教程三_第1张图片

        增加图标是比较容易的,可以仿照其他的来做就行。像这个在整个QGC顶部增加图标,需要在MainWindowlnner.qml文件中改相关的程序,如果在某个子图标下增加按钮,需要在子窗口文件下改程序。
        当我们打开MainWindowlnner.qml时,可以看到

QGC地面站二次开发教程三_第2张图片

        而这一部分其实是属于QML里面的知识,需要了解可以到网上搜搜,这里目前只是先简单介绍如何更改页面,深入了解放在后面。那我们就可以自己加一个自己定义的List,如图

QGC地面站二次开发教程三_第3张图片

        虽然可能不知道为什么加,但是感觉一定会用到。需要加一个参数,还需要加一个字符串,名字可以自己改。再让下看,会看到几个function函数,这应该是描述信号与槽连接的关系。

QGC地面站二次开发教程三_第4张图片

    那我们就需要仿照上面的函数自己来写一个function函数,下面是我自己写的

QGC地面站二次开发教程三_第5张图片

      发现有一个checkMyAddButton()函数需要添加,可以看一下前面的checkAnalyzeButton()函数是怎么定义的,利用Qt 的搜索功能可以看到使用的地方

QGC地面站二次开发教程三_第6张图片

QGC地面站二次开发教程三_第7张图片

发现在MainToolBar.qml还有函数定义,打开这个文件,可以看到,这个文件是添加信号与槽的地方

QGC地面站二次开发教程三_第8张图片

我们顺便可以仿照这个方法添加一个

QGC地面站二次开发教程三_第9张图片

往下看会看到需要定义的函数,正是我们要找的东西,仿照这个形式再继续添加

QGC地面站二次开发教程三_第10张图片

QGC地面站二次开发教程三_第11张图片

再往下就会看到一些图标的属性描述

QGC地面站二次开发教程三_第12张图片

那个.svg文件就是图标的图案,再次仿照这个写一个自己要添加的图标属性

QGC地面站二次开发教程三_第13张图片

      我这里简单的就是用了Analyze的图标,也可以自己新建一个这样的文件添加进去。线与槽添加完后,再次回到MainWindowlnner.qml里面,继续往下,看到下面有添加窗口的地方

QGC地面站二次开发教程三_第14张图片

再增加一个把自己写的显示出来

QGC地面站二次开发教程三_第15张图片

再往下看到有许多的Loader,我们不要忘记了,自己写的也要写一个类似的

QGC地面站二次开发教程三_第16张图片

QGC地面站二次开发教程三_第17张图片

这些搞完之后还要新建一个qml文件来描述单击后出现的页面情况

QGC地面站二次开发教程三_第18张图片

QGC地面站二次开发教程三_第19张图片

QGC地面站二次开发教程三_第20张图片

QGC地面站二次开发教程三_第21张图片

QGC地面站二次开发教程三_第22张图片

文件的内容可以参考AppSettings.qml里的内容,例如我的内容如下,很简单,大家应该也能很容易理解

QGC地面站二次开发教程三_第23张图片

搞完这些之后记得保存所有,编译。

会发现多了一个和Analyze一样的图标,单击会出现一个文本框,这个文本框的内容正是我们设定的

QGC地面站二次开发教程三_第24张图片

到这里,基本上我们的目标就算完成了。后面页面还需要处理一下,嘿嘿。

你可能感兴趣的:(QGC教程)