微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Qt图形编程基础之:Qt/Embedded开发入门

Qt图形编程基础之:Qt/Embedded开发入门

时间:09-13 来源:互联网 点击:

aSignal();

...

private:

...

QPushButton*aButton;

};

MyWidget::MyWidget()

{

aButton=newQPushButton(this);

connect(aButton,SIGNAL(clicked()),SIGNAL(aSignal()));

}

(4)解除信号与插槽关联。

当信号与槽没有必要继续保持关联时,用户可以使用disconnect()函数来断开连接。其定义如下所示:

boolQObject::disconnect(constQObject*sender,constchar*signal,constObject*receiver,constchar*member)[static]

这个函数断开发射者中的信号与接收者中的槽函数之间的关联。

有3种情况必须使用disconnect()函数。

n 断开与某个对象相关联的任何对象。

当用户在某个对象中定义了一个或者多个信号,这些信号与另外若干个对象中的槽相关联,如果想要切断这些关联的话,就可以利用这个方法,非常简洁。如下所示:

disconnect(myObject,0,0,0)

或者

myObject->disconnect()

n 断开与某个特定信号的任何关联。

这种情况是非常常见的,其典型用法如下所示:

disconnect(myObject,SIGNAL(mySignal()),0,0)

或者

myObject->disconnect(SIGNAL(mySignal()))

n 断开两个对象之间的关联。

这也是非常常用的情况,如下所示:

disconnect(myObject,0,myReceiver,0)

或者

myObject->disconnect(myReceiver)

注意

在disconnect()函数中0可以用作一个通配符,分别表示任何信号、任何接收对象、接收对象中的任何槽函数。但是发射者sender不能为0,其他3个参数的值可以等于0。

12.2.3搭建Qt/Embedded开发环境

一般来说,用Qt/Embedded开发的应用程序最终会发布到安装有嵌入式Linux操作系统的小型设备上,所以使用装有Linux操作系统的PC机或者工作站来完成Qt/Embedded开发当然是最理想的环境,此外Qt/Embedded也可以安装在UNIX或Windows系统上。这里就以在Linux操作系统中安装为例进行介绍。

这里需要有3个软件安装包:tmake工具安装包、Qt/Embedded安装包和Qt的X11版的安装包。

n tmake1.11或更高版本:生成Qt/Embedded应用工程的Makefile文件。

n Qt/Embedded:Qt/Embedded安装包。

n Qt2.3.2forX11:Qt的X11版的安装包,产生X11开发环境所需要的两个工具。

注意

这些软件安装包都有许多不同的版本,由于版本的不同会导致这些软件在使用时可能引起的冲突,为此必须依照一定的安装原则,Qt/Embedded安装包的版本必须比QtforX11的安装包的版本新,这是因为QtforX11的安装包中的两个工具uic和designer产生的源文件会和Qt/Embedded的库一起被编译链接,因此要本着“向前兼容”的原则,QtforX11的版本应比Qt/Embedded的版本旧。

1.安装tmake

用户使用普通的解压缩即可,注意要将路径添加到全局变量中去,如下所示:

tarzxvftmake-1.11.tar.gz

exportTMAKEDIR=$PWD/tmake-1.11

exportTMAKEPATH=$TMAKEDIR/lib/qws/linux-x86-g++

exportPATH=$TMAKEDIR/bin:$PATH

2.安装Qt/Embedded2.3.7

这里使用常见的解压命令及安装命令即可,要注意这里的路径与不同的系统有关,读者要根据实际情况进行修改。另外,这里的configure命令带有参数“-qconfig–qvfb–depths4816,32”分别为指定Qt嵌入式开发包生成虚拟缓冲帧工具qvfb,并支持4、8、16、32位的显示颜色深度。另外读者也可以在configure的参数中添加“-system”、“-jpeg”或“gif”命令,使Qt/Embedded平台能支持jpeg、gif格式的图形。

Qt/Embedded开发包有5种编译范围的选项,使用这些选项可控制Qt生成的库文件的大小。如命令makesub-src指定按精简方式编译开发包,也就是说有些Qt类未被编译。其他编译选项的具体用法可通过“./configure–help”命令查看。精简方式的安装步骤如下所示:

tarzxvfqt-embedded-2.3.7.tar.gz

cdqt-2.3.7

exportQTDIR=$PWD

exportQTEDIR=$QTDIR

exportPATH=$QTDIR/bin:$PATH

exportLD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

./configure-qconfiglocal-qvfb-depths4,8,16,32

makesub-src

3.安装Qt/X112.3.2

与上一步类似,用户也可以在configure后添加一定的参数,如“-no-opengl”或“-no-xfs”,可以键入命令“./configure–help”来获得一些帮助信息。

tarxfzqt-x11-2.3.2.tar.gz

cdqt-2.3.2

exportQTDIR=$PWD

exportPATH=$QTDIR/bin:$PATH

exportLD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

./configure-no-opengl

make

make-Ctools/qvfb

mvtools/qvfb/qvfbbin

cpbin/uic$QTEDIR/bin

12.2.4Qt/Embedded窗口部件

Qt提供了一整套的窗口部件。它们组合起来

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top