QT:QDial设置刻度的问题

QT中QDial设置刻度的问题,网上找了,没看见有几个说清了,这里给解释一下。

 

这里解释两个问题:
1)大刻度
2)小刻度

 

QT:QDial设置刻度的问题_第1张图片

QT:QDial设置刻度的问题_第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个刻度。

这个可能没解释清,不过大家湊合看着,相信你们会懂的。

QT:QDial设置刻度的问题_第3张图片

 

前提:

setNotchesVisible(true);

先要设置刻度可见。

你可能感兴趣的:(GUI库)