主要**展示:
標頭檔案
#ifndef myslider_h
#define myslider_h
#include
#include
#include
#include
#include
class
myslider
:public qwidget
; q_object
public
:explicit
myslider
(qwidget *parent =
nullptr);
~myslider()
;void
setvalue
(int value)
;void
setminvalue
(int value)
;void
setmaxvalue
(int value)
;int
getvalue()
const
;void
setcolor
(qcolor color, myslider::setselectcolor select)
;protected
:void
paintevent
(qpaintevent *ev) override;
void
mousepressevent
(qmouseevent *event) override;
void
mousereleaseevent
(qmouseevent *event) override;
void
mousemoveevent
(qmouseevent *event) override;
void
wheelevent
(qwheelevent *event) override;
signals:
public slots:
private
:int m_minvalue;
int m_maxvalue;
int m_value;
int m_width;
int m_height;
int m_movestepsize;
//移動步長
//int m_postobuttonx;//間隙
int m_linel;
int m_posbuttonx;
qcolor m_basecolor;
//底色
qcolor m_covercolor;
//覆蓋底色
qcolor m_sliderbuttonmargincolor;
//滑動按鈕邊緣顏色
qcolor m_sliderbuttonmargincolor_t;
//滑動按鈕邊緣顏色
qcolor m_sliderbuttoncolor;
//滑動按鈕填充顏色
qlabel *m_minlabel;
//顯示最小的區間
qlabel *m_midlabel;
//顯示滑動的值
qlabel *m_maxlabel;
//顯示最大區間
bool m_press;
//滑鼠按下
void
drawsliderline
(qpainter &paninter)
;void
drawsliderbutton
(qpainter &paninter)
;void
drawcoverline
(qpainter &paninter)
;void
drawinit()
;};#endif
// myslider_h
主要函式:
void myslider::
paintevent
(qpaintevent *ev)
void myslider::
mousepressevent
(qmouseevent *event)}}
void myslider::
mousereleaseevent
(qmouseevent *event)
void myslider::
mousemoveevent
(qmouseevent *event)
else
if(m_press)
update()
;}void myslider::
wheelevent
(qwheelevent *event)
else
// 當滾輪向使用者方向旋轉時
update()
;}}void myslider::
drawinit()
void myslider::
drawsliderline
(qpainter &paninter)
void myslider::
drawsliderbutton
(qpainter &paninter)
void myslider::
drawcoverline
(qpainter &paninter)
自定義控制項 滑動條SeekBar
一 效果圖 二 實現思路 1.控制項繼承自view 2.重寫兩個方法ondraw 繪製頁面和 ontouch 新增監聽 3.ondraw canvas ca 中 a.new canvas new bitmap backgroundimage backgroundcanvas 並設定控制項背景 b.n...
Qt自定義控制項 滑動選擇器
滑動選擇器為飛機儀錶盤的一部分 借鑑 在此基礎上模仿 painter繪製比較簡單不多說 重點 通過qpropertyanimation動畫類,屬性繫結,實現數字矯正到中心 在此基礎上增加滑鼠滾輪效果,void wheelevent qwheelevent event else m currentva...
自定義控制項之滑動
view滑動的方法是現實絢麗的自定義控制項的基礎 一般來說實現滑動的方法有三種 通過view本身提供的scrollto scrollby方法來實現 通過動畫方法 通過更改view的layoutparams,實現重新布局來實現。一 通過view本身提供的scrollto scrollby方法來實現 s...