下面我們來總結一下QLCDNumber的用法
一.描述
QLCDNumber主要用來展示LCD樣式的數字,他可以顯示幾乎任何大小的數字,可以顯示十進制,十六進制,八進制或二進制數,也可以展示一些簡單的字符:A,B,C,D,E,F,h,L,o,O,P,r,s,u,U,Y以及空格和度(')。
二.功能作用
1.構造
def __init__(self, numDigits: int, parent: typing.Optional[QWidget] = ...) -> None: ...
可以發現構造函數中可以傳遞一個數字,但是要注意的是這個數字並不是最終顯示出的數字,而是能夠顯示數字的位數。
2.設置顯示數值
QLCDNumber.display(self, str: str)
QLCDNumber.display(self, num: float)
QLCDNumber.display(self, num: int)
這里要注意的是如果我們前面設置了顯示的位數,但是設置的數值超出了位數限制就默認情況只顯示(0),並且小數點是占1位的。這個溢出的效果后面可以設置。
3.獲取數值
QLCDNumber.intValue()
QLCDNumber.value()
函數返回的值為int或float,如果有非數字的字符,返回值為0,如果是顯示小數獲取整數時就四舍五入取值。
4.位數限制
QLCDNumber.setDigitCount(self, nDigits: int)
QLCDNumber.digitCount()
5.進制模式設置
QLCDNumber.setMode(self, a0: 'QLCDNumber.Mode') Hex = ... # type: 'QLCDNumber.Mode' Dec = ... # type: 'QLCDNumber.Mode' Oct = ... # type: 'QLCDNumber.Mode' Bin = ... # type: 'QLCDNumber.Mode'
但是這有個簡單的方式來設置,注意下面的方法不用傳遞值,直接調用就可以了。
QLCDNumber.setHexMode()
QLCDNumber.setBinMode()
QLCDNumber.setDecMode()
QLCDNumber.setOctMode()
6.溢出判定
我們還可以給定個數,通過下面的代碼判定他是否溢出
QLCDNumber.checkOverflow(self, num: float)-> bool
QLCDNumber.checkOverflow(self, num: int) -> bool
· 由於數據溢出會異常顯示,我們在設置顯示值的時候應該先對其進行判定。
7.分段樣式
有三種分段樣式
QLCDNumber.setSegmentStyle(self, a0: 'QLCDNumber.SegmentStyle') Outline = ... # type: 'QLCDNumber.SegmentStyle' Filled = ... # type: 'QLCDNumber.SegmentStyle' Flat = ... # type: 'QLCDNumber.SegmentStyle'
從上到下的顯示效果,主要是填充效果的不同。
三.信號
QLCDNumber只有一個信號
QLCDNumber.overflow()
在顯示值溢出的時候觸發,沒有攜帶參數。