- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ossim添加按钮的简易教程
1、用QtDesigner 打开ossimPlanetQtMainWindow.ui :
拖动”Push Button”到窗口内:
在右侧属性窗口修改这个PushButton 的各种属性,最重要的属性是objectName!
因为 objectName 就是这个按钮在程序中的指针名,通过这个指针名,我们可以在程序
中调用这个按钮的一切功能!objectName 的值的格式需要符合C++里的标识符(identifier,
也叫变量名)的格式,你可以随意命名,只要不和其他控件的标识符相同即可。
虽然命名可以很随意,但是我建议,第一,objectName 的值的语言含义一定要与实际功
能相符;第二,objectName 的值需要以这种控件的类型作为结尾。这样的话,可以增加
代码的易读性!
根据以上两条规则,我将该 button 的 objectName 的默认值”pushButton” ,改成
了”exampleButton”:
首先,因为我是在给大家做示范,所以我就把这个控件(widget )就叫 “example ”;其
次,由于这个控件的类是QButton,所以objectName 就以 “button”结尾的啦!
怎样知道这个控件的类呢?大家可以在控件的属性窗口找到答案,我就不废话了!
最后一定要注意保存哦!
2、用vs2008 打开ossimPlanetQtMainWindow.h,查找“pulic slots”(当然,也可以是“private
slots ”,两者只是权限的不同罢了):
然后在public slots 在作用域范围内添加槽函数on_example_clicked() :
槽函数为什么起这个名字呢?聪明的同学可以发现,这个名字被两个下划线分为了三个
部分。
第一部分是“on ”,这是槽函数的标志,任何一个程序猿,一看到函数名以on 开头,就
知道它是槽函数;
第二部分的“exampleButton ”是控件名,也就是前面常提的object Name。
第三部分 “clicked”是控件名所拥有的信号,clicked 表示鼠标单击事件,当然你可以写
其他的信号,如何知道其他的信号名呢?
打开 qt assister 软件。由于 exampleButton 属于 QPushButton, 所以在左侧查找
“QPushButton ”:
打开 “QPushButton”后,逐渐向下找,发现这里并没有对于信号 (signal )的介绍,但
是惊喜地找到了一下内容:
“有4 个信号是继承于QAbstractButton 类”!所以我们接着查看QAbstractButton 类,
于是发现了这4 个信号:
具体这四个信号分别是什么事件触发的,大家接着往下查,不再赘述!
所以上面的“on_exampleButton_clicked() ”,也可以换成“on_exampleButton_pressed()”,
当然两者的含义是不一样的:
前者表示,如果exampleButton 被单击(相当于鼠标一按一松;clicked = pressed 之后立即
released)了,则程序会执行这个槽函数里的代码。后者表示,如果 exampleButton 被按
下了(鼠标只需按下,无需松开),则程序会执行这个槽函数on_exampleButton_pressed()
里的代码。
3、打开ossimPlanetQtMainWindow.cpp 文件。在文件的末尾添加如下代码:
因为 “on_exampleButton_clicked() ”是 ossimPlanetQtMainWindow 类里的一个函数,所
以要添加“ossimPlanetQtMainWindow ::”。
点击绿箭头,编译运行,单击“pushButton”:
张旭
二〇一三年三月二十七日
您可能关注的文档
- MOS Excel Expert(专家级)模拟题.doc
- MOSI_一种基于超长指令字处理器的同时多线程微体系结构.pdf
- Most Earthlike Planets Found Yet类地行星发现最新进展.pdf
- MOSHIV量表简体中文版的翻译修订及信度的效度评价.pdf
- Movement Control Methods for Complex, Dynamically Simulated Agents Adonis Dances the Macare.pdf
- Mo在c中的使用.doc
- Mplayer做界面并实现基本的暂停播放功能.doc
- MPLS与IP组网模式的演变_续_.pdf
- MPLS业务量工程中负载均衡算法的研究.pdf
- MPLS交换路由器的设计与实现.pdf
- other the other the others anothereach otherany other的用法区别.doc
- OTISOHCON参数及故障代码表.pdf.pdf
- Outlook Express的压缩邮件恢复问题.pdf
- OTN知识培训笔记.doc
- OutOfMemoryPermGen Space异常的处理和分析.doc
- Output Process Analysis of the Peak Cell Rate Monitor Algorithm.pdf
- OverlayLayout(重叠)布局管理器专题..pdf
- OVATION系统常用操作方法.doc
- P. Economic incentive patterns and their application to ad hoc networks.pdf
- P. Searching similar (sub)sentences for examplebased machine translation. In Proc. Atti de.pdf
最近下载
- 新版PFMEA第五版实例.xls VIP
- 东华理工大学数学分析考研真题试题2016年—2018年.pdf VIP
- 校长在2025年秋季新学期教学工作会议上的讲话_:把功夫下在课堂里,把心思放在学生上,把质量落到细节中.docx
- 机械伤害事故专项应急预案及现场处置方案.pdf VIP
- 碧桂园精装修专家班培训之项目总如何做好精装管理.pdf VIP
- 商用厨房间净水工程方案(3篇).docx VIP
- 2025福建福州闽侯县精神病医院招聘一类编外专业技术人员43人笔试备考试题及答案解析.docx VIP
- 平安意外(B款)医疗保险条款.pdf VIP
- 东华理工大学数学分析2018年考研真题试题.pdf VIP
- 2025福建福州闽侯县精神病医院招聘一类编外专业技术人员43人笔试备考题库及答案解析.docx VIP
文档评论(0)