freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于qt的圖像格式轉(zhuǎn)換器設(shè)計(jì)與實(shí)現(xiàn)本科畢業(yè)論文(編輯修改稿)

2025-07-24 18:56 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 就行了。面向組件的編程是用別人做好的代碼塊,拿過(guò)來(lái)直接用,所以編程優(yōu)勢(shì)比較明顯。QT 的類庫(kù)十分豐富,有幾千個(gè)不同的 API,也就是方法,只要你熟悉這些 API 的參數(shù)用法,就可以直接拿過(guò)來(lái)用,像連接數(shù)據(jù)庫(kù),QT 已經(jīng)寫(xiě)好常見(jiàn)的數(shù)據(jù)庫(kù)操作方法,使用時(shí),不需要再編寫(xiě),只需要拿過(guò)來(lái),直接用就好了。(3)把精力放在核心功能的實(shí)現(xiàn)上,而不是源碼本身。QT 使用了面向組件的編程機(jī)制,所利用 Qt 編程時(shí),能解放出程序員的編碼工作量,所以,程序員把精力放在業(yè)務(wù)的實(shí)現(xiàn)就可以了。利用前人的源碼,直接實(shí)現(xiàn)自己要做的業(yè)務(wù)。使用 QT 編程確實(shí)大大提高工作效率,并且代碼質(zhì)量也很高,因?yàn)檎{(diào)用的方法大都很成熟,這就是編程的微妙之處。(4)能構(gòu)造出藝術(shù)級(jí)的界面,設(shè)計(jì)界面方便。QT 設(shè)計(jì)界面非常精巧,能用源碼直接描述,效率很高。在設(shè)計(jì)界面時(shí),因?yàn)橛辛瞬季诌@個(gè)概念,設(shè)計(jì)界面時(shí),大大提高了設(shè)計(jì)效率。不像 VS,寫(xiě)個(gè)界面很死板。也許有人說(shuō),我可以用界面設(shè)計(jì)師呀!但不要忽略效率。北京郵電大學(xué)畢業(yè)設(shè)計(jì)72 QT 開(kāi)發(fā)軟件的架構(gòu)和簡(jiǎn)介 QT 的特點(diǎn)與組成Qt 是由一個(gè)強(qiáng)大的跨平臺(tái)開(kāi)發(fā)架構(gòu)組成的,它提供了大量的容器類,實(shí)現(xiàn)了平臺(tái)無(wú)關(guān)性的一大特點(diǎn)。Qt 中有一個(gè)核心類庫(kù),它是 QT 的核心,Qt 中所有的應(yīng)用程序中用到的類都是由此繼承而來(lái),這個(gè)核心類 QtCore。Qt 常用的一些類和方法(本次設(shè)計(jì)用到)QChar 表示的是一個(gè)字符的類,在核心 QtCore 之中。它中有很多常用到的方法,比如,QChar()。 // 構(gòu)造一個(gè)空字符,即39。\039。 QChar(char ch)。 // 由字符數(shù)據(jù) ch 構(gòu)造 QChar(uchar ch)。 // 由無(wú)符號(hào)字符數(shù)據(jù) ch 構(gòu)造 QChar(ushort code)。 // 由無(wú)符號(hào)短整形數(shù)據(jù) code 構(gòu)造,code 是 Unicode 編碼 QChar(short code)。 //由 短整形數(shù)據(jù) code 構(gòu)造, code 是 Unicode 編碼 QChar(uint code)。 // 由無(wú)符號(hào)整型數(shù)據(jù) code 構(gòu)造,code 是 Unicode 編碼 QChar(int code)。 // 由整型數(shù)據(jù) code 構(gòu)造,code 是 Unicode 編碼 實(shí)際使用時(shí)很少直接構(gòu)造 QChar 類的對(duì)象,而是把這些構(gòu)造函數(shù)當(dāng)做類型轉(zhuǎn)換來(lái)用,讓編譯器自動(dòng)構(gòu)造所需的 QChar 類對(duì)象。也就是說(shuō),在所有需要 QChar 類作為參數(shù)的地方都可以安全地使用各種整數(shù)類型。QChar 類提供了很多成員函數(shù),可以對(duì)字符的類型進(jìn)行判斷,如:bool isDigit() const。 // 判斷是否是十進(jìn)制數(shù)字( 39。039。 39。939。) bool isLetter() const。 // 判斷是否是字母 bool isNumber() const。 // 判斷是否是數(shù)字,包括正負(fù)號(hào)、小數(shù)點(diǎn)等 bool isLetterOrNumber()。 // 判斷是否是字母或數(shù)字 bool isLower() const。 // 判斷是否是小寫(xiě)字母 bool isUpper() const。 // 判斷是否是大寫(xiě)字母 QString 類提供了很多函數(shù)用于將字符串轉(zhuǎn)換為數(shù)值QString amp。setNum(int n, int base = 10)。 // 整型數(shù)QString amp。setNum(uint n, int base = 10)。 // 無(wú)符號(hào)整型數(shù)QString amp。setNum(long n, int base = 10)。 // 長(zhǎng)整型QString amp。setNum(ulong n, int base = 10)。 // 無(wú)符號(hào)長(zhǎng)整型數(shù)QString amp。setNum(short n, int base = 10)。 // 短整型數(shù)QString amp。setNum(ushort n, int base = 10)。 // 無(wú)符號(hào)短整型數(shù)QString amp。setNum(double n, char format = 39。g39。, int precision = 6)。 // 高精度浮點(diǎn)數(shù)QString amp。setNum(float n, char format = 39。g39。, int precision = 6)。 // 浮點(diǎn)數(shù)將浮點(diǎn)數(shù)轉(zhuǎn)換為字符串時(shí),format 參數(shù)指定轉(zhuǎn)化格式,precision 參數(shù)指定轉(zhuǎn)換結(jié)果的精度,既有效數(shù)組的個(gè)數(shù)。注意這些函數(shù)會(huì)改變 QString 對(duì)象本身的值,而以下的函數(shù)則采用了不同的做法,它們返回一個(gè)新的臨時(shí)對(duì)象以供使用QPorint 代表一個(gè)坐標(biāo)點(diǎn),從屬于QtCore庫(kù),可以認(rèn)為是一個(gè)整型的橫坐標(biāo)和一個(gè)整型的縱坐標(biāo)的組合,常用的方法包括,構(gòu)造寬度為width,高度為height的QSize對(duì)象。北京郵電大學(xué)畢業(yè)設(shè)計(jì)8QPoint 類支持以下兩種構(gòu)造方式:QPoint()。 // 構(gòu)造橫縱坐標(biāo)均為 0 的 QPoint 對(duì)象 QPoint(int x, int y)。 // 構(gòu)造橫縱坐標(biāo)分別為 x 和 y 的 QPont 對(duì)象 QPoint()。 // 構(gòu)造橫縱坐標(biāo)均為 0 的 QPoint 對(duì)象QPoint(int x, int y)。 // 構(gòu)造橫縱坐標(biāo)分別為 x 和 y 的 QPont 對(duì)象通過(guò)以下成員函數(shù)可得到 QPoint 對(duì)象中的橫縱坐標(biāo)的引用:int amp。rx()。 // 得到橫坐標(biāo)的引用 int amp。ry()。 // 到到縱坐標(biāo)的引用 int amp。rx()。 // 得到橫坐標(biāo)的引用int amp。ry()。 // 到到縱坐標(biāo)的引用 注意這些引用都不是只讀的,也就是說(shuō)可以通過(guò)它們直接修改 QPoint。QSize(int width, int height)。QFont 代表字體,在QtGui庫(kù)中實(shí)現(xiàn),可以利用其中方法設(shè)置字體屬性。QPixmap 代表圖像, 也是在QtGui庫(kù)中實(shí)現(xiàn)??梢栽O(shè)置圖像參數(shù),加載和保存圖像。QPixmap: 代表圖像,實(shí)現(xiàn)在 QtGui 庫(kù)中構(gòu)造:QPixmap()。//構(gòu)造大小為 0 的空?qǐng)D像QPixmap(const QSize amp。size)。//構(gòu)造大小為 size 的圖像,圖像數(shù)據(jù)未初始化QPixmap(int width, int height)。//等價(jià)于 QPixmap(QSize(width, height))。QPixmap(const QString amp。fileName, const char *format = 0, Qt::ImageConversionFlags flags = Qt::AutoColor)。//從指定的文件中加載圖像并生成 QPixmap 對(duì)象//fileName:文件名 .. format:字符串,表示圖像文件的格式,如果為 0,將進(jìn)行自動(dòng)識(shí)別..flags:表示顏色的轉(zhuǎn)換模式圖像參數(shù):int depth() const。//顏色深度 ,即每像素所占的 byte(比特 )數(shù)int width() const。//圖像寬度 ,單位是像素int height() const。//圖像高度,單機(jī)是像素QSize size() const。//圖像的大小,即 QSize(width(), height())。QRect rect() const。//圖像的矩形區(qū)域,即 QRect(QPoint(0,0), size())。加載和保存圖像:bool load(const QString amp。fileName, const char *format = 0, QT:ImageConversionFlags flags = Qt::AutoColor)。//從文件中加載圖像,返回 true 表示加載成功,false 則表示加載失敗bool save(const QString amp。fileName, const char *format = 0, int quality = 1) const。//將圖像保存到文件, fileName:文件名. format:字符串,表示圖像文件的格式,如果為 0,自動(dòng)確定. quality:表示圖像保存的質(zhì)量,質(zhì)量越低壓縮率越大,越不清晰,取值范圍為 0~100,1 表示采用默認(rèn)值 .QIcon 代表圖標(biāo), 在實(shí)現(xiàn)QtGui庫(kù)中,是一系列圖像的組合,每個(gè)圖像代表窗口在某種狀態(tài)下應(yīng)該顯示的圖標(biāo)??梢詷?gòu)造和添加圖像構(gòu)造:QIcon()。//構(gòu)造一個(gè)空?qǐng)D像構(gòu)成的圖標(biāo)QIcon(const QPixmap amp。pixmap)。//從QPixmap對(duì)象構(gòu)造圖標(biāo),此時(shí)系統(tǒng)會(huì)自動(dòng)產(chǎn)生窗口不同狀態(tài)下對(duì)應(yīng)的圖像,比如窗口在禁用狀態(tài)下其圖標(biāo)為灰色北京郵電大學(xué)畢業(yè)設(shè)計(jì)9QIcon(const QString amp。fileName)。//從圖像文件構(gòu)造圖標(biāo),此時(shí),文件并不是立刻加載,而是當(dāng)圖標(biāo)要顯示時(shí)才加載添加圖像:void addFile(const amp。fileName, const QSize amp。size = QSize(), Mode mode = Normal, State state = Off)。//fileName:文件名 size:指定大小mode:指定使用模式,即窗口在何種狀態(tài)下使用這個(gè)圖像state:指定使用狀態(tài)//Mode為QIcon類的成員類型,有以下取值. QIcon::Normal:窗口為使能狀態(tài),但未激活 QIcon::Disabled:窗口為禁用狀態(tài) QIcon::Active:窗口為激活狀態(tài) QIcon::Selected:窗口被選中//QIcon::Off:窗口在關(guān)狀態(tài) QIcon::On:窗口在開(kāi)狀態(tài)QWidget 代表一般的窗口,也是在實(shí)現(xiàn)QtGui庫(kù)中實(shí)現(xiàn)的,包含各種各樣的窗口,可以設(shè)置其隱蔽性,可見(jiàn)性,窗口特征等待。QDialog 對(duì)話框設(shè)置,QDialog:代表對(duì)話框,用來(lái)實(shí)現(xiàn)那些只是暫時(shí)存在的用戶界面,是獨(dú)立的窗口,但通常也有父窗口對(duì)話框有模態(tài)和非模態(tài)兩種,非模態(tài)對(duì)話框的行為和使用方法都類似于普通的窗口,模態(tài)對(duì)話框則有所不同,當(dāng)模態(tài)對(duì)話框顯示時(shí),其他窗口將全部進(jìn)入非激活狀態(tài),不能接受鍵盤(pán)和鼠標(biāo)事件,模態(tài)的方式又可分為兩種,一種是對(duì)整個(gè)應(yīng)用程序模態(tài),這時(shí)它的出現(xiàn)將導(dǎo)致程序中的所有窗口失去響應(yīng)。另一種是對(duì)窗口模態(tài),這時(shí)僅僅會(huì)導(dǎo)致它所在的整個(gè)窗口樹(shù)失去響應(yīng)它只是表示暫時(shí)存在的用戶界面,包含模態(tài)與非模態(tài)兩種。另外還有QLabel、QAbstractButton: QPushButton,QCheckBox: QRadioButton:等一些界面顯示類,這里不做贅述。 QT 開(kāi)發(fā)機(jī)制簡(jiǎn)介信號(hào)與槽機(jī)制是 QT 開(kāi)發(fā)時(shí)用到的的核心機(jī)制。信號(hào)和插槽是一種高級(jí)接口,應(yīng)用于對(duì)象與對(duì)象之間的接口通信,它是 QT 最常用到的功能,也是 QT 開(kāi)發(fā)軟件區(qū)別于其他開(kāi)發(fā)工具的關(guān)鍵。信號(hào)和插槽技術(shù)是 QT 自行定義的一種通信機(jī)制,它獨(dú)立于標(biāo)準(zhǔn)的C/C++語(yǔ)言,要想正確地處理信號(hào)和插槽,必須借助一個(gè)稱為 MOC(Metia Object Compiler)的 QT 工具,該工具可以對(duì) C++程序進(jìn)行預(yù)處理,同時(shí)為高層次的事件處理自動(dòng)生成所需要的附加代碼。Qt 的槽信號(hào)機(jī)制可以實(shí)現(xiàn)多個(gè)信號(hào)與單個(gè)插槽連接,單個(gè)信號(hào)與很多插槽也可以連接,甚至將一個(gè)信號(hào)與另外一個(gè)信號(hào)相連接也是可以實(shí)現(xiàn)的的,這時(shí)無(wú)論第一個(gè)信號(hào)什么時(shí)候發(fā)射,系統(tǒng)都將立刻發(fā)射第二個(gè)信號(hào)。總之,信號(hào)與插槽組成了一個(gè)強(qiáng)大的連鎖編程機(jī)制。在我們所熟知的很多 GUI 工具包中,窗口小部件(widget)都有一個(gè)回調(diào)函數(shù),用于響應(yīng)它們能觸發(fā)的每個(gè)動(dòng)作,回調(diào)函數(shù),通常是一個(gè)指向某個(gè)函數(shù)的指針。但是,在 QT 中信號(hào)和槽機(jī)制的開(kāi)發(fā)模式取代了這些凌亂的函數(shù)指針,使得我們編寫(xiě)這些通信程序更為簡(jiǎn)潔明了。信號(hào)和槽機(jī)制能攜帶任意數(shù)量和任意類型的參數(shù),他們是類型完全安全的,不會(huì)像回調(diào)函數(shù)那樣產(chǎn)生 core dumps。所有從 QObject 或其子類(例如 QWidget)派生的類都能夠包含信號(hào)和槽。當(dāng)對(duì)象改變其狀態(tài)時(shí),信號(hào)就由該對(duì)象發(fā)射(emit)出去,這就是對(duì)象所要做的全部事情,它不知道另一端是誰(shuí)在接收這個(gè)信號(hào)。這就是真正的信息封裝,它確保對(duì)象被當(dāng)作一個(gè)北京郵電大學(xué)畢業(yè)設(shè)計(jì)10真正的軟件組件來(lái)使用。槽用于接收信號(hào),但它們是普通的對(duì)象成員函數(shù)。一個(gè)槽并不知道是否有任何信號(hào)與自己相連接。而且,對(duì)象并不了解具體的通信機(jī)制??梢郧逦宫F(xiàn)出其實(shí)現(xiàn)原理,如圖 21 所示圖21 Qt信號(hào)和槽機(jī)制關(guān)聯(lián)圖Qmake 工具介紹。編寫(xiě)和開(kāi)發(fā)多平臺(tái)的軟件是單調(diào)乏味的,且出現(xiàn)錯(cuò)誤的幾率很大,維護(hù)艱難更是如此,尤其是當(dāng)不同的編譯器和平臺(tái)組合需要若干個(gè)編譯文件時(shí),但是通過(guò) Qt 提供的 qmake 工具可以構(gòu)建出 Cross Platform Bulids 跨平臺(tái)的應(yīng)用程序。即利用 qmake 可以根據(jù)一個(gè)工程文件(.pro)產(chǎn)生不同平臺(tái)下的 Makefile 文件。Qmake 支持跨平臺(tái)開(kāi)發(fā)和所謂的影子生成( shadow builds)技術(shù),qmake 還易于在不同的配置中切換,此外,它還可以進(jìn)行調(diào)試和發(fā)布不同版本的生成,十分方便。嵌入式系統(tǒng)的 GUI 簡(jiǎn)介 嵌入式 GUI 就是在嵌入式系統(tǒng)中為特定的硬件設(shè)備或環(huán)境而設(shè)計(jì)的圖形用
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1