日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]QT既然作為一個(gè)成功的跨平臺GUI庫,當(dāng)然會想到界面風(fēng)格統(tǒng)一,本地化與換膚都做了考慮,網(wǎng)上有多種換膚的方法,自己也習(xí)慣于用簡單的方法,總結(jié)了一下自己心得,與大家分享一

QT既然作為一個(gè)成功的跨平臺GUI庫,當(dāng)然會想到界面風(fēng)格統(tǒng)一,本地化與換膚都做了考慮,網(wǎng)上有多種換膚的方法,自己也習(xí)慣于用簡單的方法,總結(jié)了一下自己心得,與大家分享

一,改變與裝飾界面:

通常使用設(shè)置Widget的背景,邊界,子對象的圖片,顏色來進(jìn)行裝飾QWidget,

1,改變被景圖片:

較常用辦法是 QWidget.setAutoFillBackground(true); QPalette palette= QWidget.Palette(); QPixmap pic("xxx.png"); palette.setBrush(QPalette::Window, new Brush(pic));palette.setBrush(QPalette::Base, new Brush(pic));palette.setBrush(QPalette::Button, new Brush(pic)); QWidget.setPalette(palette);

但不同的控件還是要區(qū)別對待,比如對待QPushButton簡單用此方法就不行,還要設(shè)置為QPushButton.setFlat(true),也可以用QPushButton的setImage方法,還有對待 QTabWidget不僅要改變背景圖片,還要改變Tab的圖片,Tab還要區(qū)別改變被選中的Tab與沒被選中的Tab圖片,QTreeWidget,QTreeView中還要針對樹裝結(jié)節(jié)的圖片,還有標(biāo)題欄等,都要用不同的方法來設(shè)置,QT有一種更方便的解決方案,就是設(shè)置StyleSheet

被稱為QSS方法,類似網(wǎng)頁設(shè)計(jì)中的CSS, 語法也幾乎相同Idential,比如要設(shè)置QPushButton的背景圖,鼠標(biāo)over,及按下的圖片切換,可以用如下方法:

const char* normal = “bg.png";

const char* pressed = "pressed.png;

const char* over = "over.png";

char str[512] = {0};

sprintf(str,"QPushButton{background-image:url(%s);border-style.:flat;} QPushButton:hover:pressed{background-image:url(%s);border-

style.:flat;}QPushButton:hover:!pressed{background-image:url(%s);border-style.:flat;}", normal, pressed, over);

w->setStyleSheet(QString(str));

2,改變顏色:

常用:QWidget->setBackgroundColor();來改變,當(dāng)然也可以用Style. Sheet方法。

二,全局統(tǒng)一風(fēng)格:

上面提到了QSS,QT還可以通過設(shè)置QApplication的StyleSheet來改變程序中所有控件的風(fēng)格。比如:

QApplication.setStyleSheet(QString("QPushButton{background-image:url(bg.png); border-style.:flat;}")); 這樣的話,所有QPushButton的實(shí)例對象的背景圖片缺省情況下都是bg.png,當(dāng)然,如果你重新設(shè)置某個(gè)QPushButton實(shí)例對象的 StyleSheet,那個(gè)實(shí)例對象的風(fēng)格以當(dāng)前設(shè)置的為準(zhǔn)。

這樣對界面的風(fēng)格統(tǒng)一提供了一個(gè)簡單有效的解決方案。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

在嵌入式系統(tǒng)開發(fā)領(lǐng)域,Qt憑借其跨平臺特性、豐富的GUI組件和高效的開發(fā)框架,成為構(gòu)建交互式界面的首選工具之一。對于嵌入式工程師而言,掌握Qt不僅能提升開發(fā)效率,更能為智能設(shè)備、工業(yè)控制、汽車電子等領(lǐng)域的產(chǎn)品帶來更優(yōu)質(zhì)的...

關(guān)鍵字: 嵌入式 QT

在嵌入式系統(tǒng)開發(fā)領(lǐng)域,Qt憑借其跨平臺特性和豐富的功能庫,已成為構(gòu)建高性能圖形用戶界面(GUI)的首選工具之一。對于嵌入式工程師而言,掌握Qt的多種開發(fā)方式不僅能提升開發(fā)效率,還能增強(qiáng)對復(fù)雜嵌入式系統(tǒng)的控制能力。

關(guān)鍵字: 嵌入式系統(tǒng) QT

在嵌入式Linux圖形界面開發(fā)中,Qt框架憑借其跨平臺特性與豐富的組件庫成為首選方案。其核心的信號槽機(jī)制為對象間通信提供了高效解耦方案,但在資源受限的嵌入式場景中,不當(dāng)使用可能導(dǎo)致性能瓶頸。本文從機(jī)制原理出發(fā),結(jié)合典型場...

關(guān)鍵字: QT 嵌入式Linux 信號槽

隨著數(shù)字孿生技術(shù)的發(fā)展 , 三維模型的顯示與控制技術(shù)應(yīng)用需求 日益迫切 , 當(dāng)前在嵌入式環(huán)境下實(shí)現(xiàn)復(fù)雜模型的三維顯示與控制仍存在渲染效率低 、交互控制復(fù)雜 、控制延遲高 、可移植性差等問題 。針對上述問題 ,提出了一種基...

關(guān)鍵字: 0SG QT 三維可視化 模型交互控制 RK3588平臺

Qt是一款由Qt公司(前身為Trolltech)開發(fā)的跨平臺應(yīng)用程序框架。它提供了豐富的功能,包括圖形用戶界面、數(shù)據(jù)庫操作、網(wǎng)絡(luò)通信等,使得開發(fā)者能夠更加便捷地創(chuàng)建高質(zhì)量、可移植性強(qiáng)的應(yīng)用程序。Qt采用C++編寫,同時(shí)也...

關(guān)鍵字: QT RTOS

摘 要 :為解決制鞋行業(yè)中噴膠精度不高、靈活性差、生產(chǎn)效率低的問題,設(shè)計(jì)一種基于機(jī)器視覺的鞋模噴膠系統(tǒng)。該系統(tǒng)硬件由工業(yè)攝像頭、工控機(jī)及路由器構(gòu)成,軟件則采用圖像識別庫 OpenCV 與圖形界面應(yīng)用程序開發(fā)框架 Qt 編...

關(guān)鍵字: 機(jī)器視覺 圖像處理 鞋模 噴膠 OpenCV QT

嵌入式系統(tǒng)是指以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。

關(guān)鍵字: QT 嵌入式 C++

摘 要:倉儲作為物流與供應(yīng)鏈的核心環(huán)節(jié),對食品安全的控制起著至關(guān)重要的作用。溫濕度是影響糧食倉儲過程安全與品質(zhì)的重要因素。文中使用無線傳感網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)采集,通過Qt平臺設(shè)計(jì)軟件系統(tǒng),并借助數(shù)據(jù)庫進(jìn)行數(shù)據(jù)存儲與分析處理,實(shí)...

關(guān)鍵字: 成品糧 倉儲 溫濕度監(jiān)測 無線傳感網(wǎng)絡(luò) QT

在此部件上繪制行號,并將其放置在CodeEditor的viewport()的左邊距區(qū)域上,QWidget類也可以幫助我們對其內(nèi)容進(jìn)行滾動。

關(guān)鍵字: QT 代碼編輯器

不管是Qt新手還是開發(fā)過qt的群體來說,對Qt Designer、Qt Quick Designer、Qt Creator這幾個(gè)應(yīng)用程序肯定是熟悉的。

關(guān)鍵字: QT IDE C
關(guān)閉