QLCDNumber Class
QLCDNumber 위젯은 LCD와 유사한 숫자 형식으로 숫자를 표시합니다. 더 보기...
| 헤더: | #include <QLCDNumber> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 상속: | QFrame |
공개 유형
| enum | Mode { Hex, Dec, Oct, Bin } |
| enum | SegmentStyle { Outline, Filled, Flat } |
속성
|
|
공개 함수
| QLCDNumber(QWidget *parent = nullptr) | |
| QLCDNumber(uint numDigits, QWidget *parent = nullptr) | |
| virtual | ~QLCDNumber() |
| bool | checkOverflow(double num) const |
| bool | checkOverflow(int num) const |
| int | digitCount() const |
| int | intValue() const |
| QLCDNumber::Mode | mode() const |
| QLCDNumber::SegmentStyle | segmentStyle() const |
| void | setDigitCount(int numDigits) |
| void | setMode(QLCDNumber::Mode) |
| void | setSegmentStyle(QLCDNumber::SegmentStyle) |
| bool | smallDecimalPoint() const |
| double | value() const |
재구현된 공용 함수
| virtual QSize | sizeHint() const override |
공개 슬롯
| void | display(const QString &s) |
| void | display(double num) |
| void | display(int num) |
| void | setBinMode() |
| void | setDecMode() |
| void | setHexMode() |
| void | setOctMode() |
| void | setSmallDecimalPoint(bool) |
신호
| void | overflow() |
재구현된 보호 함수
| virtual bool | event(QEvent *e) override |
| virtual void | paintEvent(QPaintEvent *) override |
상세 설명

거의 모든 크기로 숫자를 표시할 수 있습니다. 십진수, 16진수, 8진수 또는 2진수를 표시할 수 있습니다. display() 슬롯을 사용하면 데이터 소스에 쉽게 연결할 수 있으며, 이 슬롯은 다섯 가지 인자 유형 중 어느 것이든 받을 수 있도록 오버로드되어 있습니다.
또한 setMode()을 사용하여 기수를 변경하고, setSmallDecimalPoint()을 사용하여 소수점을 변경하는 슬롯도 있습니다.
QLCDNumber는 표시 범위를 벗어난 값을 표시해야 할 때 overflow() 신호를 발생시킵니다. 표시 범위는 setDigitCount()로 설정되지만, setSmallDecimalPoint()도 이에 영향을 미칩니다. 표시 형식이 16진수, 8진수 또는 2진수로 설정된 경우, 해당 값에 해당하는 정수 값이 표시됩니다.
다음과 같은 숫자 및 기타 기호를 표시할 수 있습니다: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, 마이너스, 소수점, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, 콜론, 도 기호(문자열 내에서 작은따옴표로 지정됨) 및 공백. QLCDNumber는 허용되지 않는 문자를 공백으로 대체합니다.
value()를 사용하여 숫자 값을 가져올 수는 있지만, QLCDNumber 객체의 내용을 직접 가져오는 것은 불가능합니다. 텍스트가 꼭 필요하다면, display() 슬롯에 연결된 신호를 다른 슬롯에도 연결하여 해당 슬롯에 값을 저장하는 것을 권장합니다.
참고로, QLCDNumber는 Qt에서 가장 오래된 부분으로, 그 기원은 Sinclair Spectrum의 BASIC 프로그램까지 거슬러 올라갑니다.
멤버 유형 문서
enum QLCDNumber::Mode
이 유형은 숫자가 어떻게 표시되는지를 결정합니다.
| 상수 | 값 | 설명 |
|---|---|---|
QLCDNumber::Hex | 0 | 16진수 |
QLCDNumber::Dec | 1 | 십진수 |
QLCDNumber::Oct | 2 | 8진수 |
QLCDNumber::Bin | 3 | 이진수 |
표시 형식이 16진수, 8진수 또는 2진수로 설정된 경우, 해당 값에 해당하는 정수 값이 표시됩니다.
enum QLCDNumber::SegmentStyle
이 유형은 ‘ QLCDNumber ’ 위젯의 시각적 모양을 결정합니다.
| 상수 | 값 | 설명 |
|---|---|---|
QLCDNumber::Outline | 0 | 배경색으로 채워진 돌출된 세그먼트를 제공합니다. |
QLCDNumber::Filled | 1 | windowText 색상으로 채워진 돌출된 세그먼트를 표시합니다. |
QLCDNumber::Flat | 2 | windowText 색상으로 채워진 평평한 세그먼트를 생성합니다. |
속성 설명
digitCount : int
이 속성은 현재 표시된 자릿수를 저장합니다.
현재 자릿수와 일치합니다. ` QLCDNumber::smallDecimalPoint `가 false인 경우, 소수점이 한 자리의 공간을 차지합니다.
기본적으로 이 속성의 값은 5입니다.
액세스 함수:
| int | digitCount() const |
| void | setDigitCount(int numDigits) |
smallDecimalPoint도 참조하십시오 .
intValue : int
이 속성은 표시된 값을 가장 가까운 정수로 반올림한 값을 저장합니다.
이 속성은 LCDNumber에 의해 현재 표시된 값에 가장 가까운 정수에 해당합니다. 이 값은 16진수, 8진수 및 2진수 모드에서 사용됩니다.
표시된 값이 숫자가 아닌 경우, 이 속성의 값은 0이 됩니다.
기본적으로 이 속성의 값은 0입니다.
액세스 함수:
mode : Mode
이 속성은 현재 표시 모드(기수)를 저장합니다.
현재 표시 모드에 해당하며, 이 모드는 Bin, Oct, Dec (기본값), Hex 중 하나입니다. Dec 모드는 부동 소수점 값을 표시할 수 있으며, 다른 모드들은 해당 정수 값을 표시합니다.
액세스 함수:
| QLCDNumber::Mode | mode() const |
| void | setMode(QLCDNumber::Mode) |
smallDecimalPoint(), setHexMode(), setDecMode(), setOctMode() 및 setBinMode()도 참조하십시오 .
segmentStyle : SegmentStyle
이 속성은 LCDNumber의 스타일을 지정합니다.
| 스타일 | 결과 |
|---|---|
Outline | 배경색으로 채워진 돌출된 세그먼트를 생성합니다 |
Filled (이것이 기본값입니다)로 채워진 돌출된 세그먼트를 생성합니다. | 전경색으로 채워진 돌출된 세그먼트를 생성합니다. |
Flat | 전경색으로 채워진 평평한 세그먼트를 생성합니다. |
Outline 또한 Filled 는 그림자 효과를 위해 QPalette::light() 및 QPalette::dark()를 추가로 사용합니다.
액세스 함수:
| QLCDNumber::SegmentStyle | segmentStyle() const |
| void | setSegmentStyle(QLCDNumber::SegmentStyle) |
smallDecimalPoint : bool
이 속성은 소수점의 표시 방식을 지정합니다.
true인 경우 소수점은 두 자릿수 위치 사이에 표시됩니다. 그렇지 않은 경우 소수점은 별도의 자릿수 위치를 차지하며, 즉 자릿수 위치에 표시됩니다. 기본값은 false입니다.
소수점이 숫자 사이에 그려질 경우, 숫자 사이의 간격이 약간 넓어집니다.
액세스 함수:
| bool | smallDecimalPoint() const |
| void | setSmallDecimalPoint(bool) |
mode도 참조하십시오 .
value : double
이 속성은 표시된 값을 저장합니다
이 속성은 LCDNumber에 현재 표시된 값에 해당합니다.
표시된 값이 숫자가 아닌 경우, 이 속성의 값은 0이 됩니다.
기본적으로 이 속성의 값은 0입니다.
액세스 함수:
멤버 함수 설명서
[explicit] QLCDNumber::QLCDNumber(QWidget *parent = nullptr)
LCD 숫자를 생성하고, 자릿수를 5로, 기수를 10진수로, 소수점 모드를 ‘작은’으로, 프레임 스타일을 돌출된 상자로 설정합니다. ` segmentStyle()`는 ` Outline`로 설정됩니다.
parent 인수는 QFrame 생성자에 전달됩니다.
setDigitCount() 및 setSmallDecimalPoint()도 참조하십시오 .
[explicit] QLCDNumber::QLCDNumber(uint numDigits, QWidget *parent = nullptr)
LCD 숫자를 생성하고, 자릿수를 ` numDigits`로, 기수를 10진수로, 소수점 표시 모드를 'small'로, 프레임 스타일을 돌출된 상자로 설정합니다. ` segmentStyle()`는 ` Filled`로 설정됩니다.
parent 인수는 QFrame 생성자에 전달됩니다.
setDigitCount() 및 setSmallDecimalPoint()도 참조하십시오 .
[virtual noexcept] QLCDNumber::~QLCDNumber()
LCD에 표시된 숫자를 지웁니다.
bool QLCDNumber::checkOverflow(double num) const
num 가 너무 커서 전체를 표시할 수 없는 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.
display(), digitCount(), smallDecimalPoint()도 참조하십시오 .
bool QLCDNumber::checkOverflow(int num) const
num 가 너무 커서 전체를 표시할 수 없는 경우 ` true `를 반환하고, 그렇지 않은 경우 ` false`를 반환합니다.
이 함수는 오버로드된 함수입니다.
display(), digitCount(), smallDecimalPoint()도 참조하십시오 .
int QLCDNumber::digitCount() const
현재 자릿수를 반환합니다.
참고: digitCount 속성에 대한게터 함수입니다.
setDigitCount()도 참조하십시오 .
[slot] void QLCDNumber::display(const QString &s)
s 라는 문자열이 나타내는 숫자를 표시합니다.
이 함수 버전은 mode() 및 smallDecimalPoint()을 무시합니다.
표시할 수 있는 숫자 및 기타 기호는 다음과 같습니다: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, 마이너스, 소수점, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, 콜론, 도 기호(문자열 내에서 작은 따옴표로 지정됨) 및 공백. QLCDNumber 는 허용되지 않는 문자를 공백으로 대체합니다.
참고: 이 슬롯은 오버로드되어 있습니다. 이 슬롯에 연결하려면:
// Connect using qOverload:
connect(sender, &SenderClass::signal,
lCDNumber, qOverload(&QLCDNumber::display));
// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
lCDNumber, [receiver = lCDNumber](const QString &s) { receiver->display(s); }); [slot] void QLCDNumber::display(double num)
num 라는 숫자를 표시합니다.
참고: 이 슬롯은 오버로드되어 있습니다. 이 슬롯에 연결하려면:
// Connect using qOverload:
connect(sender, &SenderClass::signal,
lCDNumber, qOverload(&QLCDNumber::display));
// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
lCDNumber, [receiver = lCDNumber](double num) { receiver->display(num); }); [slot] void QLCDNumber::display(int num)
num 라는 숫자를 표시합니다.
참고: 이 슬롯은 오버로드되어 있습니다. 이 슬롯에 연결하려면:
// Connect using qOverload:
connect(sender, &SenderClass::signal,
lCDNumber, qOverload(&QLCDNumber::display));
// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
lCDNumber, [receiver = lCDNumber](int num) { receiver->display(num); }); [override virtual protected] bool QLCDNumber::event(QEvent *e)
QFrame::event(QEvent *e)를 재구현합니다.
[signal] void QLCDNumber::overflow()
이 신호는 QLCDNumber 에 너무 큰 숫자나 너무 긴 문자열을 표시하도록 요청될 때마다 발생합니다.
setDigitCount() 함수에서는 절대 이 신호가 발생하지 않습니다.
[override virtual protected] void QLCDNumber::paintEvent(QPaintEvent *)
QFrame::paintEvent(QPaintEvent *)를 재구현합니다.
[slot] void QLCDNumber::setBinMode()
setMode(Bin)을 호출합니다. 편의상 제공됩니다(예: 버튼을 이에 연결하기 위해).
setMode(), setHexMode(), setDecMode(), setOctMode() 및 mode()도 참조하십시오 .
[slot] void QLCDNumber::setDecMode()
setMode(Dec)를 호출합니다. 편의상 제공됩니다(예: 버튼을 이에 연결하기 위함).
setMode(), setHexMode(), setOctMode(), setBinMode() 및 mode()도 참조하십시오 .
void QLCDNumber::setDigitCount(int numDigits)
현재 자릿수를 ` numDigits`로 설정합니다. 0~99 사이의 값이어야 합니다.
참고: digitCount 속성에 대한설정 함수입니다.
digitCount()도 참조하십시오 .
[slot] void QLCDNumber::setHexMode()
setMode(16진수)를 호출합니다. 편의상 제공됩니다(예: 버튼을 이에 연결하기 위함).
setMode(), setDecMode(), setOctMode(), setBinMode(), mode()도 참조하십시오 .
[slot] void QLCDNumber::setOctMode()
setMode 를 호출합니다 (10월). 편의상 제공됩니다 (예: 버튼을 이에 연결하기 위함).
setMode(), setHexMode(), setDecMode(), setBinMode(), mode()도 참조하십시오 .
[override virtual] QSize QLCDNumber::sizeHint() const
QFrame::sizeHint() const를 재구현합니다.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.