欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

柚子快報(bào)激活碼778899分享:開(kāi)發(fā)語(yǔ)言 【QT】Widget

柚子快報(bào)激活碼778899分享:開(kāi)發(fā)語(yǔ)言 【QT】Widget

http://yzkb.51969.com/

目錄

widget常用屬性及其作用

enabled

geomtry

window frame

window frame的影響

相關(guān)API?

windowTitle?

windowIcon

qrc機(jī)制?

qrc使用方式

自定義鼠標(biāo)圖片?

設(shè)置字體樣式

設(shè)置鼠標(biāo)懸停提示

toolTip

控件獲取焦點(diǎn)

styleSheet ?

widget常用屬性及其作用

屬性作用enabled設(shè)置控件是否可使用geometry位置和尺寸,包含x,y,width,height四個(gè)部分windowTitle設(shè)置widget標(biāo)題windowIcon設(shè)置widget圖標(biāo)windowOpacity設(shè)置widget透明度cursor鼠標(biāo)懸停時(shí)顯示的圖標(biāo)形狀,是普通箭頭,還是沙漏,還是十字等

font

字體相關(guān)屬性.

涉及到字體家族, 字體??, 粗體, 斜體, 下劃線等等樣式

toolTip

?標(biāo)懸停在 widget 上會(huì)在狀態(tài)欄中顯?的提?信息

toolTipDuring

toolTip 顯?的持續(xù)時(shí)間.

statusTip

Widget 狀態(tài)發(fā)?改變時(shí)顯?的提?信息(?如按鈕被按下等)

whatsThis

?標(biāo)懸停并按下 alt+F1 時(shí), 顯?的幫助信息(顯?在?個(gè)彈出的窗?中).

styleSheet

允許使? CSS 來(lái)設(shè)置 widget 中的樣式.

Qt 中?持的樣式?常豐富, 對(duì)于前端開(kāi)發(fā)?員上?是?常友好的.

focusPolicy

該 widget 如何獲取到焦點(diǎn).

?

Qt::NoFocus:控件不參與焦點(diǎn)管理,即?法通過(guò)鍵盤(pán)或?標(biāo)獲取焦點(diǎn)

?

Qt::TabFocus:控件可以通過(guò)Tab鍵獲得焦點(diǎn)

?

Qt::ClickFocus:控件可以通過(guò)?標(biāo)點(diǎn)擊獲得焦點(diǎn)

?

Qt::StrongFocus:控件可以通過(guò)鍵盤(pán)和?標(biāo)獲得焦點(diǎn)

?

Qt::WheelFocus:控件可以通過(guò)?標(biāo)滾輪獲得焦點(diǎn)(在某些平臺(tái)或樣式中可能不可

?)

layoutDirection

布局?向.

?

Qt::LeftToRight:?本從左到右排列,也是默認(rèn)值。

?

Qt::RightToLeft:?本從右到左排列。

?

Qt::GlobalAtomics:部件的布局?向由全局原?性決定(PS 這個(gè)翻譯其實(shí)有點(diǎn)尷尬. 其實(shí)就是根據(jù)應(yīng)?程序中的其他 widget 布局?向確定的)

inputMethodHints

針對(duì)輸?框有效, ?來(lái)提???當(dāng)前能輸?的合法數(shù)據(jù)的格式. ?如只能輸?數(shù)字, 只能

輸??期等.

enabled

API說(shuō)明isEnabled()獲取到控件的可用狀態(tài)setEnabled設(shè)置控件是否可使用

示例:?

button->setEnabled(false);? //設(shè)置禁用

*所謂“禁用”指的是該控件不能接收任何用戶的輸入事件,并且外觀往往也是灰色的。

*如果一個(gè)widget被禁用,則該widget的子元素也被禁用。?

geomtry

位置和尺寸,其實(shí)是四個(gè)屬性的統(tǒng)稱:

x 橫坐標(biāo)y 縱坐標(biāo)width 寬度heigh t寬度

API說(shuō)明geometry()獲取到控件的位置和尺寸,返回結(jié)果是一個(gè)QRect,包含x,y,width,height,其中 x,y是左上角的坐標(biāo) setGeometry(QRect) setGeometry(int x,int y,int width,int height) 設(shè)置控件的位置和尺寸,可以直接設(shè)置一個(gè)QRect,也可以分四個(gè)屬性單獨(dú)設(shè)置

//獲取當(dāng)前位置信息

QRect rect = ui->pushButton_target->geometry();

//改變控件位置信息

ui->pushButton_target->

setGeometry

(rect.

x

() -

5

, rect.

y

(), rect.

width

(),

rect.

height

());

window frame

window frame的影響

如果 widget 作為?個(gè)窗? (帶有標(biāo)題欄, 最?化, 最?化, 關(guān)閉按鈕), 那么在計(jì)算尺?和坐標(biāo)的

時(shí)候就有兩種算法. 包含 window frame 和 不包含 window frame.

其中 x(), y(), frameGeometry(), pos(), move() 都是按照包含 window frame 的?式來(lái)計(jì)算

的.

其中 geometry(), width(), height(), rect(), size() 則是按照不包含 window frame 的?式來(lái)計(jì)算的.

當(dāng)然, 如果?個(gè)不是作為窗?的 widget , 上述兩類?式得到的結(jié)果是?致的.

實(shí)際差別如下圖所示?

相關(guān)API?

API說(shuō)明x() 獲取橫坐標(biāo) 計(jì)算時(shí)包含 window frame y()

獲取縱坐標(biāo)

計(jì)算時(shí)包含 window frame

pos()

返回 QPoint 對(duì)象, ??包含 x(), y(), setX(), setY() 等?法.

計(jì)算時(shí)包含 window frame

frameSize()

返回 QSize 對(duì)象, ??包含 width(), height(), setWidth(), setHeight() 等?法. 計(jì)算時(shí)包含 window frame

frameGeometry()

返回 QRect 對(duì)象. QRect 相當(dāng)于 QPoint 和 QSize 的結(jié)合體. 可以獲取 x, y,

width, size. 計(jì)算時(shí)包含 window frame 對(duì)象.

width()

獲取寬度

計(jì)算時(shí)不包含 window frame

height()

獲取?度

計(jì)算時(shí)不包含 window frame

size()

返回 QSize 對(duì)象, ??包含 width(), height(), setWidth(), setHeight() 等?法.

計(jì)算時(shí)不包含 window frame

rect()

返回 QRect 對(duì)象. QRect 相當(dāng)于 QPoint 和 QSize 的結(jié)合體. 可以獲取并設(shè)置 x, y, width, size.

計(jì)算時(shí)不包含 window frame 對(duì)象

geometry

返回 QRect 對(duì)象. QRect 相當(dāng)于 QPoint 和 QSize 的結(jié)合體. 可以獲取 x, y,

width, size.

計(jì)算時(shí)不包含 window frame 對(duì)象.

setGeometry

直接設(shè)置窗?的位置和尺?. 可以設(shè)置 x, y, width, height, 或者 QRect 對(duì)象.

計(jì)算時(shí)不包含 window frame 對(duì)象

windowTitle?

API說(shuō)明windowTitle()

獲取到控件的窗?標(biāo)題.

setWindowTitle(const

QString& title)

設(shè)置控件的窗?標(biāo)題.

代碼示例:

this

->

setWindowTitle

(

"

這是標(biāo)題

"

);

windowIcon

API說(shuō)明windowIcon()

獲取到控件的窗?圖標(biāo). 返回 QIcon 對(duì)象.

setWindowIcon(const

QIcon&

icon

)

設(shè)置控件的窗?圖標(biāo).

注意:同 windowTitle, 上述操作僅針對(duì)頂層 widget 有效.

代碼示例:

//

創(chuàng)建圖標(biāo)對(duì)象

QIcon

icon

(

"d:/rose.jpg"

);

//

設(shè)置圖標(biāo)

this

->

setWindowIcon

(icon); ?

設(shè)置圖標(biāo)的時(shí)候,可能會(huì)存在路徑圖片的問(wèn)題,因此,Qt中有一個(gè)qrc機(jī)制

qrc機(jī)制?

這個(gè)機(jī)制從根本上解決下述兩個(gè)問(wèn)題:

確保你的圖片所在的路徑在目標(biāo)用戶機(jī)器上存在確保你的圖片不會(huì)被用戶搞沒(méi)了

在Qt項(xiàng)目引入一個(gè)額外的xml文件(后綴名使用 .qrc表示)在這個(gè)xml中把要使用的圖片資源給導(dǎo)入進(jìn)來(lái),并且在xml中進(jìn)行記錄。

Qt在編譯項(xiàng)目的時(shí)候,就會(huì)根據(jù)qrc中描述的圖片信息,找到圖片內(nèi)容,并且提取出圖片的二進(jìn)制數(shù)據(jù),把這些二進(jìn)制數(shù)據(jù)轉(zhuǎn)成C++代碼,最終編譯到exe里。

但是qrc機(jī)制也存在缺點(diǎn):無(wú)法導(dǎo)入太大的資源文件,比如搞幾個(gè)GB的這種視頻文件,qrc就無(wú)能為力了

qrc使用方式

第一步:在項(xiàng)目中創(chuàng)建一個(gè)qrc文件,文件名不要帶中文和特殊符號(hào)

第二步:把圖片導(dǎo)入到qrc文件中

(1)先創(chuàng)建一個(gè)“前綴”(prefix)

所謂的“前綴”可以理解成虛擬的目錄,這個(gè)目錄沒(méi)有在你的電腦上真實(shí)存在,是Qt自己抽象出來(lái)的 ,qrc機(jī)制本質(zhì)上就是把圖片的二進(jìn)制數(shù)據(jù),轉(zhuǎn)成C++代碼(最終就會(huì)在代碼中看到很大的char數(shù)組,里面就是圖片的二進(jìn)制數(shù)據(jù))

為了方便Qt代碼中訪問(wèn)到這個(gè)圖片,Qt就自己抽象出了虛擬的目錄

(2)把需要的圖片導(dǎo)入到資源文件中

?

上示的按鈕在創(chuàng)建prefix之前是禁用的,創(chuàng)建好prefix之后就可以使用了,添加的文件就是添加到prefix下面的。?點(diǎn)擊這個(gè)按鈕后,所得到的目錄就是當(dāng)前代碼所在的目錄。

導(dǎo)入圖片的時(shí)候,需要確保你導(dǎo)入的圖片必須在resourse.qrc文件的同級(jí)目錄

如上即可完成添加。

當(dāng)代碼中需要訪問(wèn)qrc中管理的文件時(shí),就需要在路徑上帶有:前綴,格式如下:

QIcon icon("?:/wallhaven-7p3993.jpg")

自定義鼠標(biāo)圖片?

//訪問(wèn)到圖片文件

QPixmap pixmap(":/123.jpg");

//構(gòu)造光標(biāo)對(duì)象

QCursor cursor(pixmap,10,10);

//把光標(biāo)設(shè)置進(jìn)去

this->setCursor(cursor);

但是圖片可能會(huì)因?yàn)樘蠡蛘咛。晕覀兛梢酝ㄟ^(guò)縮放或者放大圖片以便實(shí)現(xiàn)效果

//訪問(wèn)到圖片文件

QPixmap pixmap(":/123.jpg");

pixmap = pixmap.scaled(100,100);

縮放操作不是對(duì)圖像本身進(jìn)行修改,而是?返回一個(gè)新的圖像副本,所以我們需要將它在存起來(lái)

iconfont-阿里巴巴矢量圖標(biāo)庫(kù)

設(shè)置字體樣式

QLabel* label= new QLabel(this);

label->setText("這是一段文本");

//創(chuàng)建字體對(duì)象

QFont font;

font.setFamily("仿宋");

font.setPixelSize(30);

font.setBold(true);

font.setItalic(true);

font.setUnderline(true);

font.setStrikeOut(true);

//把font對(duì)象設(shè)置到lebel中

label->setFont(font);

設(shè)置鼠標(biāo)懸停提示

一個(gè)GUI程序,界面比較復(fù)雜,按鈕很多的時(shí)候,我們希望鼠標(biāo)懸停在某個(gè)控件的時(shí)候,能彈出一個(gè)提示

toolTip

API說(shuō)明setToolTip 設(shè)置toolTip 鼠標(biāo)懸停在該widget上時(shí)會(huì)有提示說(shuō)明 setToolTipDuring 設(shè)置toolTip提示的時(shí)間,單位ms。 時(shí)間到后toolTip自動(dòng)消失

代碼示例:

ui->pushButton_yes->

setToolTip

(

"

這個(gè)是

yes

按鈕

"

);

ui->pushButton_yes->

setToolTipDuration

(

3000

);

控件獲取焦點(diǎn)

設(shè)置控件獲取到焦點(diǎn)的策略. ?如某個(gè)控件能否??標(biāo)選中或者能否通過(guò) tab 鍵選中.

所謂 "焦點(diǎn)" , 指的就是能選中這個(gè)元素. 接下來(lái)的操作 (?如鍵盤(pán)操作), 就都是針對(duì)該焦點(diǎn)元素進(jìn)?的了. 這個(gè)對(duì)于 輸?框, 單選框, 復(fù)選框等控件?常有?的.

API說(shuō)明

focusPolicy()

獲取該 widget 的 focusPolicy, 返回 Qt::FocusPolicy

setFocusPolicy(Qt::FocusPolicy

policy

)

設(shè)置 widget 的 focusPolicy.

Qt::FocusPolicy

是?個(gè)枚舉類型. 取值如下

?

Qt::NoFocus

:控件不會(huì)接收鍵盤(pán)焦點(diǎn)

?

Qt::TabFocus

:控件可以通過(guò)Tab鍵接收焦點(diǎn)

?

Qt::ClickFocus

:控件在?標(biāo)點(diǎn)擊時(shí)接收焦點(diǎn)

?

Qt::StrongFocus

:控件可以通過(guò)Tab鍵和?標(biāo)點(diǎn)擊接收焦點(diǎn) (默認(rèn)值)

?

Qt::WheelFocus

: 類似于

Qt::StrongFocus

, 同時(shí)控件也通過(guò)?標(biāo)滾輪獲取到焦點(diǎn) (新增

的選項(xiàng), ?般很少使?).

styleSheet ?

通過(guò) CSS 設(shè)置 widget 的樣式

CSS 中可以設(shè)置的樣式屬性?常多

. 基于這些屬性 Qt 只能?持其中?部分, 稱為 QSS (Qt Style Sheet)

. 具體的?持情況可以參考 Qt ?檔中 "Qt Style Sheets Reference" 章節(jié).

代碼示例:

this

->

setStyleSheet

(

"background-color: #333"

);

ui->textEdit->

setStyleSheet

(

"background-color: #333; color: #fff;"

);

ui->pushButton_light->

setStyleSheet

(

"color: #fff"

);

ui->pushButton_dark->

setStyleSheet

(

"color: #fff"

);

柚子快報(bào)激活碼778899分享:開(kāi)發(fā)語(yǔ)言 【QT】Widget

http://yzkb.51969.com/

推薦鏈接

評(píng)論可見(jiàn),查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19057410.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問(wèn)

文章目錄