QT:QDial設置刻度的問題

QT中QDial設置刻度的問題,網上找了,沒看見有幾個說清了,這裏給解釋一下。

 

這裏解釋兩個問題:
1)大刻度
2)小刻度

 

上面那張圖只有大刻度,下面這張圖大刻度小刻度(別糾結這個名稱)都有。

 

大刻度設置:

Dial->setPageStep(5);

這裏的QDial對象名爲Dial,用setPageStep方法。
裏面有一個參數,我這設置成5的話,意思就是再經過5個刻度(不分大小刻度)到下一個大刻度,大家看第二張圖就能明白。 
具體的,這個方法大家可以去幫助文檔查。
別太糾結我寫的,可能有人會說,setPageStep不是設置每按一次PageUp和PageDown所移動的距離的嗎?
我不解釋。

 

小刻度設置:

Dial->setMinimum(0);
Dial->setMaximum(59);
Dial->setNotchTarget(1);

這裏的QDial對象名爲Dial。
先要設置Dial的總寬度(上面圖用紅色框框表示的這種距離之和),也就是用setMinimum和setMaximum這兩個方法,設置最小值和最大值, 相信大家知道0~59總共有多少個整數吧,60個,在這裏,我們的總寬度是59(別管單位)。

然後用setNotchTarget設置兩個刻度間的距離,這裏的值是1,也就是每兩個刻度間都僅隔着1個單位的寬度。
在這裏,我們知道總寬度是59,兩刻度間的寬度是1,算出來,就是有60個刻度。

這個可能沒解釋清,不過大家湊合看着,相信你們會懂的。

 

前提:

setNotchesVisible(true);

先要設置刻度可見。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章