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 |
詳細説明
あらゆるサイズの数値を表示できる。10進数、16進数、8進数、2進数を表示できる。display ()スロットを使ってデータ・ソースに接続するのが簡単で、5つの引数型のいずれかを取るようにオーバーロードされている。
また、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、Y、コロン、度記号(文字列ではシングルクォートで指定)、スペース。QLCDNumberは、不正な文字をスペースに置き換えます。
QLCDNumberオブジェクトの中身を取り出すことはできませんが、value ()で数値を取り出すことはできます。どうしてもテキストが必要な場合は、display ()スロットに供給する信号を別のスロットにも接続し、そこに値を格納することをお勧めします。
ちなみにQLCDNumberはQtの中で最も古く、そのルーツはSinclair SpectrumのBASICプログラムにまで遡ります。
メンバ型のドキュメント
enum QLCDNumber::Mode
この型は数値の表示方法を決定する。
定数 | 値 | 説明 |
---|---|---|
QLCDNumber::Hex | 0 | 16進数 |
QLCDNumber::Dec | 1 | 10進数 |
QLCDNumber::Oct | 2 | 8進数 |
QLCDNumber::Bin | 3 | 2進数 |
表示が16進数、8進数、2進数に設定されている場合は、その値に相当する整数が表示されます。
enum QLCDNumber::SegmentStyle
このタイプは、QLCDNumber ウィジェットの視覚的な外観を決定します。
定数 | 値 | 説明 |
---|---|---|
QLCDNumber::Outline | 0 | 背景色で塗りつぶされた隆起セグメントを与えます。 |
QLCDNumber::Filled | 1 | windowText 色で塗りつぶされた隆起セグメントを与えます。 |
QLCDNumber::Flat | 2 | windowText 色で塗りつぶされた平らなセグメントを与える。 |
プロパティの説明
digitCount : int
現在の表示桁数を保持する。
現在の桁数に対応する。QLCDNumber::smallDecimalPoint が false の場合、小数点が 1 桁の位置を占める。
デフォルトでは、このプロパティの値は 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の場合、小数点は2つの桁位置の間に描画されます。そうでない場合、小数点はそれ自身の桁位置を占め、つまり桁位置に描画されます。デフォルトは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 進数に、小数点モードを「小」に、フレーム・スタイルを隆起したボックスに設定する。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、 Y、 コロン、 度記号 (文字列内ではシングルクオートで指定)、 スペース。QLCDNumber は、 スペースを不正な文字の代用とします。
[slot]
void QLCDNumber::display(double num)
これはオーバーロードされた関数である。
数値num を表示する。
[slot]
void QLCDNumber::display(int num)
これはオーバーロードされた関数である。
数値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(Hex)を呼び出す。便宜上提供されている(例えば、ボタンを接続するため)。
setMode(),setDecMode(),setOctMode(),setBinMode(),mode()も参照のこと 。
[slot]
void QLCDNumber::setOctMode()
setMode(Oct)を呼び出す。便宜上提供(ボタンを接続するためなど)。
setMode(),setHexMode(),setDecMode(),setBinMode(),mode()も参照のこと 。
[override virtual]
QSize QLCDNumber::sizeHint() const
再実装:QFrame::sizeHint() const.
© 2025 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.