999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Windows 7操作系統(tǒng)和Qt技術的電子相冊設計

2014-09-27 17:54:16燕麗紅林志雄楊星
現代電子技術 2014年8期
關鍵詞:跨平臺嵌入式界面

燕麗紅+林志雄+楊星

摘要: Qt是一個跨平臺的C++圖形用戶界面庫,由挪威的TrollTech公司開發(fā),能提供用于用戶應用開發(fā)的圖形界面及豐富的圖形庫。基于Windows 7操作系統(tǒng),采用嵌入式Qt技術,C++語言進行模塊化編程,設計了一款智能化的電子相冊。該相冊具有圖片加載、瀏覽、旋轉、放大與縮小、循環(huán)播放等基本功能。測試結果表明該設計具有人性化,操作簡單等特點。

關鍵詞: Qt; Windows 7操作系統(tǒng); 模塊化編程; 電子相冊

中圖分類號: TN911?34; TP273文獻標識碼: A文章編號: 1004?373X(2014)08?0030?02

Design of electronic photo album based on Windows 7 operating system and QT

YAN Li?hong1, LIN Zhi?xiong2, YANG Xing3

(1. Information Engineering College , Xian Eurasia Univisity, Xian , 710065, China;

2. Department of Electronics and Information Engineering, Putian University, Fujian, 351100, China;

3. Xian South Electronic Technology Co., Ltd, Xian, 710068, China )

Abstract: With the development of embedded technology, humanization and intelligent consumer electronics become more and more popular in people′s life. Qt provided by TrollTech Corporation in Norway is a cross?platform graphical user interface library of C++, which can provide visual graphic interface and rich graphics library for application program developers. An intelligent electronic photo album was designed by using Windows 7 operating system, QT embedded technology and modularization programming with C++ language. The electronic album has the basic functions of photo loading, browse, amplification, reduction, loop playback and so on. The testing result shows that the album has and is convenient to operate.

Keywords: QT; Windows 7 operating system; modularization programming; electronic albu

隨著電子電路集成化和計算機技術的快速發(fā)展,航空、醫(yī)療、消費電子、汽車電子等眾多領域對嵌入式技術應用越來越廣泛。而作為消費電子領域的產品電子相冊具有圖、文、聲、像并茂的表現手法,隨意修改編輯的功能,快速的檢索方式,永不褪色的恒久保存特性,以及廉價復制分發(fā)等傳統(tǒng)相冊無法比擬的優(yōu)越性,現在已得到現代人的青睞[1?4]。因此,采用嵌入式技術,通過人機交互界面的建立進行電子相冊設計就顯得很有十分必要。

1Qt開發(fā)環(huán)境分析

Qt是一個跨平臺的C++圖形用戶界面庫[5?8]。由挪威的TrollTech公司開發(fā),目前已被Nokia收購。Qt的主要特點有:面向對象,很容易擴展,且允許真正的組件編程;Qt對各個模塊進行了良好的封裝,使各模塊可重用性較好;優(yōu)良的跨平臺特性,使用Qt類編寫的程序可以實現 “一次編碼,到處編譯”,極大的降低了跨平臺開發(fā)的難度(丁丁等,2004);持Windows,Linux,Solaris,SunOS,FreeBSD,BSD/OS,SCO,AIX,OS390,QNX 等操作系統(tǒng),面向對象很容易擴展。Qt提供了一種稱為 signals/slots?的安全類型來替代callback,具有良好的封裝機制,可重用性較好。同時包含近700API類庫,允許真正的組件編程,是一種開源軟件,使用起來簡便且高效,具有良好的可移植性,目前主流的具有移植性的GUI API開發(fā)包有miniGUI,Qt,OpenGUI。在Qt的應用程序中,首先要進行初始化設置,即首先是創(chuàng)建QApplication對象,QApplication類是負責圖形用戶界面的應用程序的控制流和主設置。Qt軟件用戶界面如圖1所示。

int main( int argc, char **argv )

{

QApplication app( argc,argv );

......}

圖1 Qt軟件用戶界面

2基于Qt的電子相冊的設計

本文基于Windows 7操作系統(tǒng),采用Qt技術,利用C++語言[9?11]進行模塊化編程,設計了一款電子相冊,具有瀏覽、旋轉、圖片切換以及放大縮小等功能,該電子相冊還支持jpg,png,gif和bmp等格式圖片的瀏覽。見圖2。

圖2 電子相冊功能結構圖

2.1電子相冊的界面設計

本設計的電子相冊界面大小設定為1 024×500,界面的左側顯示圖片文件名列表(當前瀏覽圖片名為藍色),寬度為200,右側為圖片顯示區(qū)域,圖片顯示區(qū)域的下方為圖片放大/縮小滑動條。該相冊界面具有OPEN(打開圖片文件)、ZOOMIN(縮小圖片)、ZOOMOUT(放大圖片)、LOOP(幻燈片循環(huán)模式顯示)、PAUSE(暫停)和QUIT(一鍵退出)等功能按鈕,界面如圖3所示。

相冊界面大小的設定程序代碼如下:

Window::Window()

{

setFixedSize( 1024,500 );

QSplitter *splitter = new QSplitter(Qt::Horizontal);

listwidget = new QListWidget();

listwidget?>setFixedWidth(200);

......

}

2.2圖片顯示功能設計

進入電子相冊界面后,通過界面左側的顯示可以打開計算機存儲圖片所在的文件夾,將從當前目錄下掃描xpm,jpg,png,gif格式的圖片并將其名稱存入文件夾中,通過load函數來加載圖片到一個QImage類型變量中,然后將此變量和Label關聯(lián)起來,最終在Label上顯示實現的圖片。打開圖片的部分代碼如下:

void Photo::load(QString filename) //打開圖片

{

pixmap.load(filename);

m_rect = rect();

update();

}

圖3 電子相冊界面設計

2.3圖片放大與縮小功能的設計

本設計可以在任意狀態(tài)下對圖片進行縮小,同時能保證縮小的圖片還位居相冊的中間位置,在圖片非全屏模式與全屏模式兩種情況下都可以。圖片放大的部分程序代碼:

void Photo::zoomin() {

m_rect.setWidth(m_rect.width() ? m_rect.width()/100);

m_rect.setX((rect().width() ? m_rect.width()) / 2);

m_rect.setHeight(m_rect.height() ? m_rect.height()/100);

m_rect.setY((rect().height() ? m_rect.height()) / 2);

m_slider?>setValue(m_slider?>value()?1);

update();}

2.4循環(huán)顯示圖片功能設計

通過循環(huán)模式播放選中的圖片,可以使用戶很方便地進行照片的選擇,節(jié)約時間。本設計通過下列代碼實現了幻燈片循環(huán)播放的功能:

loop = new QAction(Qicon

(":/images/loop.png"),"loop", this); //幻燈片循環(huán)

loop?>setEnabled(false);

connect(loop, SIGNAL(triggered()), this, SLOT(slotStart()));

QAction *stoploop = new QAction(QIcon(":/images/stop.png"), "pause", this);

connect(stoploop, SIGNAL(triggered()), this, SLOT(slotstop()));

3結語

嵌入式技術的快速發(fā)展,使得嵌入式產品已深入人們生活,電子相冊的出現打破了傳統(tǒng)相冊不易保存、瀏覽等問題。本文采用嵌入式Qt技術,C++語言編程設計了一款電子相冊,可以實現圖片加載、瀏覽、放大與縮小等基本功能。該設計方案具有低耦合、高內聚、可擴展、操作簡單等良好特點。下一步需要完善的是對圖片按要求裁剪、插入文字、加邊框等圖片編輯功能的設計。

參考文獻

[1] 袁媛,王延紅,江凌,等.基于Qt及OpenCASCADE的建模技術研究[J].現代電子技術,2013,36(10):74?77.

[2] 史桂紅.XML及GDI+在便攜式電子相冊中的應用[J].計算機系統(tǒng)應用,2013,22(3):161?165.

[3] 程博.基于嵌入式Qt的數字機頂盒圖形界面設計與實現[J].計算機應用,2009(11):45?46.

[4] 趙鵬.基于嵌入式Linux的MP3播放器的設計與實現[J].現代計算機,2011(3):111?112.

[5] 蔡志明.精通Qt4編程[M].2版.北京:電子工業(yè)出版社,2011.

[6] 李艷民.基于Qt跨平臺的人機交互界面的研究和應用[D].重慶:重慶大學,2007.

[7] 李亞鋒,歐文盛.嵌入式系統(tǒng)開發(fā)從入門到精通[M].北京:清華大學出版社,2007.

[8] 衰野,王宏遠.一種嵌入式系統(tǒng)中GUI的設計[J].計算機與數字工程,2006(1):9?11.

[9] 袁媛,王延紅,江凌,等.C++類庫Qt在數值模擬軟件開發(fā)中的應用[J].現代電子技術,2010,33(2):80?83.

[10] 譚浩強.C++面向對象程序設計[M].北京:清華大學出版社,2006.

[11] BLANCHETTE Jasmin, SUMMERFIELD Mark. C++ GUI Programming with Qt4 [M]. 2版.北京:電子工業(yè)出版社,2008.

void Photo::load(QString filename) //打開圖片

{

pixmap.load(filename);

m_rect = rect();

update();

}

圖3 電子相冊界面設計

2.3圖片放大與縮小功能的設計

本設計可以在任意狀態(tài)下對圖片進行縮小,同時能保證縮小的圖片還位居相冊的中間位置,在圖片非全屏模式與全屏模式兩種情況下都可以。圖片放大的部分程序代碼:

void Photo::zoomin() {

m_rect.setWidth(m_rect.width() ? m_rect.width()/100);

m_rect.setX((rect().width() ? m_rect.width()) / 2);

m_rect.setHeight(m_rect.height() ? m_rect.height()/100);

m_rect.setY((rect().height() ? m_rect.height()) / 2);

m_slider?>setValue(m_slider?>value()?1);

update();}

2.4循環(huán)顯示圖片功能設計

通過循環(huán)模式播放選中的圖片,可以使用戶很方便地進行照片的選擇,節(jié)約時間。本設計通過下列代碼實現了幻燈片循環(huán)播放的功能:

loop = new QAction(Qicon

(":/images/loop.png"),"loop", this); //幻燈片循環(huán)

loop?>setEnabled(false);

connect(loop, SIGNAL(triggered()), this, SLOT(slotStart()));

QAction *stoploop = new QAction(QIcon(":/images/stop.png"), "pause", this);

connect(stoploop, SIGNAL(triggered()), this, SLOT(slotstop()));

3結語

嵌入式技術的快速發(fā)展,使得嵌入式產品已深入人們生活,電子相冊的出現打破了傳統(tǒng)相冊不易保存、瀏覽等問題。本文采用嵌入式Qt技術,C++語言編程設計了一款電子相冊,可以實現圖片加載、瀏覽、放大與縮小等基本功能。該設計方案具有低耦合、高內聚、可擴展、操作簡單等良好特點。下一步需要完善的是對圖片按要求裁剪、插入文字、加邊框等圖片編輯功能的設計。

參考文獻

[1] 袁媛,王延紅,江凌,等.基于Qt及OpenCASCADE的建模技術研究[J].現代電子技術,2013,36(10):74?77.

[2] 史桂紅.XML及GDI+在便攜式電子相冊中的應用[J].計算機系統(tǒng)應用,2013,22(3):161?165.

[3] 程博.基于嵌入式Qt的數字機頂盒圖形界面設計與實現[J].計算機應用,2009(11):45?46.

[4] 趙鵬.基于嵌入式Linux的MP3播放器的設計與實現[J].現代計算機,2011(3):111?112.

[5] 蔡志明.精通Qt4編程[M].2版.北京:電子工業(yè)出版社,2011.

[6] 李艷民.基于Qt跨平臺的人機交互界面的研究和應用[D].重慶:重慶大學,2007.

[7] 李亞鋒,歐文盛.嵌入式系統(tǒng)開發(fā)從入門到精通[M].北京:清華大學出版社,2007.

[8] 衰野,王宏遠.一種嵌入式系統(tǒng)中GUI的設計[J].計算機與數字工程,2006(1):9?11.

[9] 袁媛,王延紅,江凌,等.C++類庫Qt在數值模擬軟件開發(fā)中的應用[J].現代電子技術,2010,33(2):80?83.

[10] 譚浩強.C++面向對象程序設計[M].北京:清華大學出版社,2006.

[11] BLANCHETTE Jasmin, SUMMERFIELD Mark. C++ GUI Programming with Qt4 [M]. 2版.北京:電子工業(yè)出版社,2008.

void Photo::load(QString filename) //打開圖片

{

pixmap.load(filename);

m_rect = rect();

update();

}

圖3 電子相冊界面設計

2.3圖片放大與縮小功能的設計

本設計可以在任意狀態(tài)下對圖片進行縮小,同時能保證縮小的圖片還位居相冊的中間位置,在圖片非全屏模式與全屏模式兩種情況下都可以。圖片放大的部分程序代碼:

void Photo::zoomin() {

m_rect.setWidth(m_rect.width() ? m_rect.width()/100);

m_rect.setX((rect().width() ? m_rect.width()) / 2);

m_rect.setHeight(m_rect.height() ? m_rect.height()/100);

m_rect.setY((rect().height() ? m_rect.height()) / 2);

m_slider?>setValue(m_slider?>value()?1);

update();}

2.4循環(huán)顯示圖片功能設計

通過循環(huán)模式播放選中的圖片,可以使用戶很方便地進行照片的選擇,節(jié)約時間。本設計通過下列代碼實現了幻燈片循環(huán)播放的功能:

loop = new QAction(Qicon

(":/images/loop.png"),"loop", this); //幻燈片循環(huán)

loop?>setEnabled(false);

connect(loop, SIGNAL(triggered()), this, SLOT(slotStart()));

QAction *stoploop = new QAction(QIcon(":/images/stop.png"), "pause", this);

connect(stoploop, SIGNAL(triggered()), this, SLOT(slotstop()));

3結語

嵌入式技術的快速發(fā)展,使得嵌入式產品已深入人們生活,電子相冊的出現打破了傳統(tǒng)相冊不易保存、瀏覽等問題。本文采用嵌入式Qt技術,C++語言編程設計了一款電子相冊,可以實現圖片加載、瀏覽、放大與縮小等基本功能。該設計方案具有低耦合、高內聚、可擴展、操作簡單等良好特點。下一步需要完善的是對圖片按要求裁剪、插入文字、加邊框等圖片編輯功能的設計。

參考文獻

[1] 袁媛,王延紅,江凌,等.基于Qt及OpenCASCADE的建模技術研究[J].現代電子技術,2013,36(10):74?77.

[2] 史桂紅.XML及GDI+在便攜式電子相冊中的應用[J].計算機系統(tǒng)應用,2013,22(3):161?165.

[3] 程博.基于嵌入式Qt的數字機頂盒圖形界面設計與實現[J].計算機應用,2009(11):45?46.

[4] 趙鵬.基于嵌入式Linux的MP3播放器的設計與實現[J].現代計算機,2011(3):111?112.

[5] 蔡志明.精通Qt4編程[M].2版.北京:電子工業(yè)出版社,2011.

[6] 李艷民.基于Qt跨平臺的人機交互界面的研究和應用[D].重慶:重慶大學,2007.

[7] 李亞鋒,歐文盛.嵌入式系統(tǒng)開發(fā)從入門到精通[M].北京:清華大學出版社,2007.

[8] 衰野,王宏遠.一種嵌入式系統(tǒng)中GUI的設計[J].計算機與數字工程,2006(1):9?11.

[9] 袁媛,王延紅,江凌,等.C++類庫Qt在數值模擬軟件開發(fā)中的應用[J].現代電子技術,2010,33(2):80?83.

[10] 譚浩強.C++面向對象程序設計[M].北京:清華大學出版社,2006.

[11] BLANCHETTE Jasmin, SUMMERFIELD Mark. C++ GUI Programming with Qt4 [M]. 2版.北京:電子工業(yè)出版社,2008.

猜你喜歡
跨平臺嵌入式界面
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
跨平臺APEX接口組件的設計與實現
測控技術(2018年9期)2018-11-25 07:44:58
搭建基于Qt的嵌入式開發(fā)平臺
基于FANUC PICTURE的虛擬軸坐標顯示界面開發(fā)方法研究
嵌入式軟PLC在電鍍生產流程控制系統(tǒng)中的應用
人機交互界面發(fā)展趨勢研究
手機界面中圖形符號的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
基于QT的跨平臺輸電鐵塔監(jiān)控終端軟件設計與實現
基于OPC跨平臺通信的電機監(jiān)測與診斷系統(tǒng)
基于B/S的跨平臺用戶界面可配置算法研究
主站蜘蛛池模板: 免费人成网站在线观看欧美| 欧美伊人色综合久久天天| 一级全免费视频播放| 欧美成人a∨视频免费观看| 精品第一国产综合精品Aⅴ| 黄色网址免费在线| 午夜福利无码一区二区| 日韩欧美亚洲国产成人综合| 日韩一区精品视频一区二区| 夜夜高潮夜夜爽国产伦精品| 在线观看精品国产入口| 99热这里只有精品在线观看| 久久人人爽人人爽人人片aV东京热 | 国产精品第| 国产永久在线观看| 免费一极毛片| 三上悠亚在线精品二区| 国产理论最新国产精品视频| 妇女自拍偷自拍亚洲精品| 亚洲国语自产一区第二页| 114级毛片免费观看| 午夜成人在线视频| 久久精品人妻中文视频| 国产在线视频欧美亚综合| 精品欧美一区二区三区久久久| 女人18毛片水真多国产| 国产v欧美v日韩v综合精品| 国产肉感大码AV无码| 538精品在线观看| 91精品人妻一区二区| 国产精品视频久| 国产午夜在线观看视频| 999精品视频在线| 欧美三级日韩三级| 动漫精品啪啪一区二区三区| 国产免费好大好硬视频| 女人18毛片一级毛片在线 | 激情爆乳一区二区| 亚洲一本大道在线| 欧美亚洲国产精品第一页| 国产一区二区影院| 婷婷激情五月网| 精品国产网| 欧美成人区| 青青草综合网| 欧美第一页在线| 亚洲国产精品美女| 91毛片网| 国产永久在线视频| 亚洲精品欧美日本中文字幕| 国产精品女在线观看| 欧美97欧美综合色伦图| 欧美国产菊爆免费观看| 夜夜高潮夜夜爽国产伦精品| 国产成人调教在线视频| 国产亚洲精| 国产国拍精品视频免费看| 亚洲成在线观看| 91免费精品国偷自产在线在线| 人妻21p大胆| 青青草原国产av福利网站| 婷婷色婷婷| 久久永久视频| 精品久久久久久久久久久| 国产欧美另类| 久久77777| 亚洲中文字幕在线观看| 日本爱爱精品一区二区| 性激烈欧美三级在线播放| 国产在线精品99一区不卡| 天堂网亚洲系列亚洲系列| 国模极品一区二区三区| 亚洲中文字幕日产无码2021| 综合色在线| 91在线激情在线观看| 欧美一区二区人人喊爽| 国产美女人喷水在线观看| 国产精品美乳| 美女潮喷出白浆在线观看视频| 99精品国产高清一区二区| 色婷婷视频在线| 亚洲精品色AV无码看|