QT總結 一 製作自己的控制項

2021-10-01 21:45:03 字數 2462 閱讀 5398

製作自己風格的按鈕

(一)切換

.**件

#include

#include

#include

#include

class btswitch : public qpushbutton

;int width,height;

private:

bool switchflag;

qstring styleon;

qstring styleoff;

qpixmap* maskon;

qpixmap* maskoff;

protected:

void

mousepressevent

(qmouseevent * event)

;signals:

void

switchon()

;void

switchoff()

;private slots:

};

cpp檔案

//switch

btswitch:

:btswitch

(qwidget *parent)

:qpushbutton

(parent)

//style 按鈕型別 factor 縮放係數

void btswitch:

:selectstyle

(int style,

double factor),,

,,,,

,,};

char pathon[80]

;char pathoff[80]

; switchflag=false;

//預設是未按下狀態

//尺寸

width=sizes[style][0

]*factor;height=sizes[style][1

]*factor;

sprintf

(pathon,

":/image/image/switch%d_on.png"

, style)

;sprintf

(pathoff,

":/image/image/switch%d_off.png"

, style)

;//char轉qstring

qstring pathon_s = qstring:

:fromlocal8bit

(pathon)

; qstring pathoff_s = qstring:

:fromlocal8bit

(pathoff)

; maskon=new qpixmap

(pathon_s)

; maskoff=new qpixmap

(pathoff_s)

;*maskon=maskon->

scaled

(width,height,qt:

:keepaspectratio)

;*maskoff=maskoff->

scaled

(width,height,qt:

:keepaspectratio)

;/* 設定按鈕的有效區域 */

setmask

(qbitmap

(maskon->

mask()

));//border_img可以自適應控制項大小 background_img 不會

styleon=

"qpushbutton"

; styleoff=

"qpushbutton"

;setstylesheet

(styleon);}

void btswitch:

:mousepressevent

(qmouseevent *event)

else

if(switchflag==true)

}}

生成乙個按鈕物件

btswitch *btswitch;

btswitch=new btswitch

(this)

;btswitch->

selectstyle

(btswitch:

:realistic,

1.0)

;//設定按鈕樣式,縮放比例

btswitch->

setgeometry(10

,25,btswitch->width,btswitch->height)

;//只需設定位置

~持續更

Qt製作Skin(面板)總結

使用skin 是製作酷酷介面的乙個有利的工具,在使用者介面gui越來越重要的今天,乙個應用程式如果只有一套 不能更換 那麼這個應用程 序的生命力是非常值得人們懷疑的 那麼使用qt如何製作酷酷而又吸引人的介面呢?下面我會對在qt下進行 製作,異型視窗製作做乙個總結,對於新手是一 個入門,對於老手算是乙...

Qt製作Skin(面板)總結

使用skin 是製作酷酷介面的一 個有利的工具,在使用者介面gui越來越重要的今天,乙個應用程式如果只有一套 不能更換 那麼這個應用程式的生命力是非常值得人們懷疑的 那麼使 用qt如何製作酷酷而又吸引人的介面呢?下面我會對在qt下進行 製作,異型視窗製作做乙個總結,對於新手是乙個入門,對於老手算是乙...

利用QT製作自定義控制項

1.首先利用 qt crearot 建立乙個自定義控制項專案 在建立的過程中要指明建立的類和建立的類的例項名稱。這樣在以後使用的過程中可以直接使用。此處還得指明 icon 圖示檔案為了在 designer 中顯示。2.在建立的專案中開始編寫相應的處理函式,肯能主要的是過載 onpaint 函式,這樣...