在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 嵌入式機車車輛車載播放系統(tǒng)軟件設(shè)計與實現(xiàn)

            嵌入式機車車輛車載播放系統(tǒng)軟件設(shè)計與實現(xiàn)

            作者: 時間:2018-09-05 來源:網(wǎng)絡(luò) 收藏

            1.Qt簡介

            本文引用地址:http://www.biyoush.com/article/201809/388447.htm

            Qt是Trolltech公司的標(biāo)志性產(chǎn)品(現(xiàn)Trolltech公司已被手機巨頭NOKIA公司收購),是一個跨平臺的C++圖形用戶界面(GUI)工具包。它既可以開發(fā)GUI程式,也可用于開發(fā)非GUI程式,比如控制臺工具和服務(wù)器。Qt是面向?qū)ο笳Z言,易于擴展,并且允許組件編程。Qt應(yīng)用程序接口與工具兼容于所有支持平臺,讓開發(fā)員們掌握一個應(yīng)用程序接口便可執(zhí)行與平臺非相關(guān)的應(yīng)用開發(fā)與配置。

            Qt支持下述平臺:

            1)MS/Windows-95、98、NT 4.0、ME、2000、XP、Vista和Win7;

            2)Unix/X11-Linux、Sun Solaris、HPUX、CompaqTru64 UNIX、IBM AIX、SGI IRIX、FreeBSD、BSD/OS和其它很多X11平臺;3)Macintosh-Mac OS X;

            4)Embedded-有幀緩沖(framebuffer)支持的嵌入式Linux平臺,Windows CE.

            Qt對不同平臺的專門API進行了專門的封裝(文件處理、網(wǎng)絡(luò)等)。

            Qt被Nokia收購后推出了一款新的輕量級集成開發(fā)環(huán)境(IDE)Qt Creator.QtCreator可帶來兩大關(guān)鍵益處:提供首個專為支持跨平臺開發(fā)而設(shè)計的集成開發(fā)環(huán)境(IDE),并確保首次接觸Qt框架的開發(fā)人員能迅速上手和操作。

            Qt Creator包含了一套用于創(chuàng)建和測試基于Qt應(yīng)用程序的高效工具,包括:一個高級的C++代碼編輯器、上下文感知幫助系統(tǒng)、可視化調(diào)試器、源代碼管理、項目和構(gòu)建管理工具。

            Qt/Embedded(簡稱QT/E)是一個專門為嵌入式系統(tǒng)設(shè)計圖形用戶界面的工具包,是NOKIA公司的圖形化界面開發(fā)工具Qt的嵌入式版本,它通過QtAPI與LinuxI/O以及Framebuffer直接交互,擁有較高的運行效率,而且整體采用面向?qū)ο缶幊?,擁有良好地體系架構(gòu)和編程模式。

            Qt/embedded和Qt一樣,在4.5版本之后提供了三種不同的授權(quán)協(xié)議GPL,LGPL和Commercial.開發(fā)者使用QT/E開發(fā)的應(yīng)用程序要移植到不同平臺時,只需要重新編譯代碼,而不需要對代碼進行修改。并可以隨意設(shè)置程序界面的外觀、方便地為程序連接數(shù)據(jù)庫、使程序本地化、將程序與Java集成等。

            2.使用Qt Creator設(shè)計界面

            在Qt Creator中完成車載播放器工程的創(chuàng)建后首先是設(shè)計界面。界面可用代碼生成,也可用Qt Designer輔助設(shè)計。使用Qt Designer設(shè)計界面只需將界面中所需的窗口部件拖入ui界面文件中,然后設(shè)置屬性修改其顯示效果,最后使用布局控件設(shè)置布局效果。通過拖放窗口部件完成的界面在布局上不夠精確,因此本系統(tǒng)采用純代碼來完成界面開發(fā)。

            本系統(tǒng)的界面主要包括的窗口部件有Table View、Push Button等。在界面的布局上,系統(tǒng)采用了手工布局方式。

            手工布局方式通過基類Q W i d g e t提供的setGeometry()函數(shù)來設(shè)置子窗口部件的位置和大小,當(dāng)窗口大小改變的時候,重新計算窗口的大小或者變化比例,然后重載QWidget::resizeEvent(QResizeEvent*)函數(shù),能夠使得子窗口部件的大小和位置作出適應(yīng)性的改變。

            如圖1所示為本系統(tǒng)的主界面:

            界面設(shè)計的主要開發(fā)過程如下:

            1)使基礎(chǔ)窗口QWidget繼承于主窗口QMainWindow,窗體構(gòu)造函數(shù)負(fù)責(zé)模板的初始化;

            2)創(chuàng)建MyButton類構(gòu)造窗體按鈕部件,并對窗口部件中使用的對象以及函數(shù)進行聲明,包括圖標(biāo)、名稱、字體、文本、坐標(biāo)、畫筆、按鈕是否有效、重繪時間、鼠標(biāo)按下事件等;

            3)添加按鈕的信號與槽。系統(tǒng)界面中每個功能按鈕都對應(yīng)一個信號和槽,信號和槽式Qt編程的核心技術(shù),通過信號可以將界面上的空間所發(fā)生的事件進行發(fā)射,槽函數(shù)負(fù)責(zé)接受相應(yīng)信號并作出響應(yīng)處理。如播放暫停按鈕,與其對應(yīng)的信號是單擊,它的單擊信號連接一個槽處理函數(shù),在這個函數(shù)中通過QProcess來向slave模式下的MPlayer發(fā)送命令,達到控制播放的目的。其他的控件在處理方式上都與播放暫停按鈕類似,都有自己得信號和槽。

            3.軟件功能模塊設(shè)計

            機車車輛車載播放器主要由音頻播放和視頻播放兩大部分組成,這兩部分存在著很多相同和相似的功能,為避免重復(fù)編碼,采用C++面向?qū)ο蟮哪K化設(shè)計思想,將兩部分中功能相似的部分抽取出來,形成獨立的功能模塊,提高了軟件的可重用性和系統(tǒng)的運行效率。各功能模塊均采用C++類來實現(xiàn),對模塊內(nèi)部的數(shù)據(jù)進行封轉(zhuǎn),對外提供接口供外部調(diào)用,一方面提高了系統(tǒng)的數(shù)據(jù)安全性,另一方面也使軟件編碼更加的規(guī)范。

            為實現(xiàn)機車車輛車載播放系統(tǒng)的功能,創(chuàng)建了窗體文件用于設(shè)置車載播放器的窗體;創(chuàng)建了配置文件用于處理系統(tǒng)配置信息;創(chuàng)建了用于實現(xiàn)對數(shù)據(jù)庫操作的源文件;創(chuàng)建了觸摸屏控制文件以及歌曲列表文件。

            具體功能模塊設(shè)計方式如下:

            1)搜索歌曲

            點擊搜索歌曲按鈕時,跳出一個對話框,當(dāng)用戶輸入了歌曲名或名稱中的部分內(nèi)容并確定后,發(fā)送消息到服務(wù)器端,服務(wù)器端對表song進行模糊查詢,得到符合的歌曲列表,將這些信息返回給客戶端,在客戶端形成一個QwidgetTable控件,用來顯示搜索的結(jié)果。當(dāng)用戶點擊其中的一行時,將相應(yīng)行的歌曲信息賦值給current并播放。

            2)上一首

            上一首按鈕連接了prev()函數(shù),它的功能是通過prev()函數(shù)來實現(xiàn)的。在此函數(shù)中,實現(xiàn)讀取usersong.xml文件中位置為songpos-1的歌曲信息,賦值給current,然后進行播放,實現(xiàn)上一首功能。

            3)播放

            當(dāng)點擊播放按鈕時,隱藏播放按鈕,顯示暫停按鈕,并讀取c u r r e n t中的信息,通過Phonon的函數(shù)play()實現(xiàn)播放。

            4)暫停

            當(dāng)點擊暫停按鈕時,隱藏暫停按鈕,顯示播放按鈕,調(diào)用Phonon中的pause()函數(shù),將播放暫停。

            5)下一首

            當(dāng)點擊下一首按鈕時,調(diào)用nextFile()函數(shù),并且當(dāng)歌曲播放完之后會產(chǎn)生一個aboutToFinish()信號,這個時候也會調(diào)用nextFile()函數(shù)。在此函數(shù)中調(diào)用readinformation()函數(shù),得到下一首的信息,并播放。


            上一頁 1 2 下一頁

            關(guān)鍵詞:

            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉