首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» ZedBoard学习手记(八) 更大的目标!在Linux下开发图形用户界面
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
ZedBoard学习手记(八) 更大的目标!在Linux下开发图形用户界面
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2014-9-19 10:53
|
只看该作者
ZedBoard学习手记(八) 更大的目标!在Linux下开发图形用户界面
Linux
,
开发
,
手记
,
用户
,
初中
在Linux下做GUI,比较简单的方法是使用QT。QT一直被用于跨平台的应用程序开发,之前属于Nokia,现在被卖给了Digia,开源版本的主页是
http://qt-project.org/
。QT的开发语言是C++和QML,可以用各种工具来进行开发设计,官方的IDE是QT Creator。要说明的是,兔子没学过C++,只用过VB.NET(这甚至能追溯到初中的爱好,而我又一直都是个“不务正业”的人,总是无可救药地对与“正业”关系不大的知识产生兴趣。),不过面向对象嘛都是共通的,如果用过Visual Studio,熟悉下语法就应该可以开始开发了。首先要安装QT,兔子做开发的时候(Nokia还没把QT完全裁掉)Nokia制作了Qt SDK,将Qt Lib、Qt Creator等悉数集成,最后一版更新应该是QtSdk-offline-linux-x86-v1.2.1.run,只要在Ubuntu下双击运行就能完成全部安装工作,十分方便。不过现在Nokia自身难保,早已无暇顾及Qt的更新工作了,Digia也没有更新SDK的动作,并且封了之前的下载地址,所以只能分开下载安装Qt Creator和Qt Lib了,具体配置方法请自行研究。两天迅雷快传不能用了,过一段我会上传一个快传地址,让大家能共方便地使用SDK进行安装。
兔子已经上传了一个安装包到快传,共享时间有限,需要的自行下载:
http://kuai.xunlei.com/d/YWFYMZRCJOAY
现在最新的版本为5.0 Beta ,兔子使用的还是稳定版本4.8.3,安装完成后,在Ubuntu的导航栏中输入Qt,选择打开Qt Creator。
下面先写一个简单的软件(当然是HelloWorld)练习一下。新建一个工程,选择Qt GUI应用。
输入工程名称及路径,Qt Creator会自动建立一个与工程同名的文件夹。
选择目标平台,这里要在Ubuntu下运行调试,所以选桌面。
因为这里创建的是一个Qt GUI应用,Qt Creator会自动为工程创建一个窗口,这个窗口是以类的形式进行封装的,为它起名为HelloQT,基类是QmainWindow。
工程建立好后,双击左侧的helloqt.ui打开主窗口设计界面。
这个界面基本与Visual Studio类似,在设计界面中,左边是控件列表,右边是属性列表。不过兔子感觉,属性列表里所能涵盖的项目与VS相比十分有限,很多的操作还要通过代码来执行,自动补全功能也非常蛋疼。
在设计界面中,为目标窗口添加一个Push Button和一个Label(拖进窗口里就行),分别命名为ButtonHello和LabelHello,我们要做的就是实现单击Button,改变Label的文本内容。
用过VB.NET或者C#的朋友应该清楚,这里只需要插入一个Button_Clicked的事件(Event),就能实现此功能。在QT中,与事件相对应的是信号槽(Signal Slot),用来传递按钮单击时产生的信号。右击Button选择转到槽。
信号类型选择clicked()。
IDE会自动切换到代码界面,为这个槽输入所需功能代码,与VS的另一个不同之处是,许多东西在VS中是可以修改的属性(比如这个Text),在QT里则无法通过操作属性赋值,而是要调用一个方法来执行,好不习惯啊。
代码如下,浅显易懂,就是通过setText方法将Label的文本设置为“Hello QT!”。void HelloQT:
n_ButtonHello_clicked(){ ui->LabelHello->setText("Hello QT!");}保存,点击运行按钮,Qt Creator会自动编译运行工程。
好了看看效果吧。
这个工程生成的可执行文件可以直接在Ubuntu下运行,用file指令查看应用程序信息,得知这是一个为x86 64-bit系统编译的程序,想要在ZedBoard上跑——无论是板子自带的Demo系统还是Linaro——还需要重新编译。
来源:
电子懒兔的博客
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议