QAbstractSlider Class
QAbstractSlider クラスは、範囲内の整数値を提供します。さらに...
ヘッダ | #include <QAbstractSlider> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
を継承する: | QWidget |
によって継承される: | QDial,QScrollBar, およびQSlider |
パブリックな型
enum | SliderAction { SliderNoAction, SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, SliderPageStepSub, …, SliderMove } |
プロパティ
|
|
パブリック機能
QAbstractSlider(QWidget *parent = nullptr) | |
virtual | ~QAbstractSlider() |
bool | hasTracking() const |
bool | invertedAppearance() const |
bool | invertedControls() const |
bool | isSliderDown() const |
int | maximum() const |
int | minimum() const |
Qt::Orientation | orientation() const |
int | pageStep() const |
void | setInvertedAppearance(bool) |
void | setInvertedControls(bool) |
void | setMaximum(int) |
void | setMinimum(int) |
void | setPageStep(int) |
void | setSingleStep(int) |
void | setSliderDown(bool) |
void | setSliderPosition(int) |
void | setTracking(bool enable) |
int | singleStep() const |
int | sliderPosition() const |
void | triggerAction(QAbstractSlider::SliderAction action) |
int | value() const |
パブリックスロット
void | setOrientation(Qt::Orientation) |
void | setRange(int min, int max) |
void | setValue(int) |
シグナル
void | actionTriggered(int action) |
void | rangeChanged(int min, int max) |
void | sliderMoved(int value) |
void | sliderPressed() |
void | sliderReleased() |
void | valueChanged(int value) |
保護された型
enum | SliderChange { SliderRangeChange, SliderOrientationChange, SliderStepsChange, SliderValueChange } |
保護された関数
QAbstractSlider::SliderAction | repeatAction() const |
void | setRepeatAction(QAbstractSlider::SliderAction action, int thresholdTime = 500, int repeatTime = 50) |
virtual void | sliderChange(QAbstractSlider::SliderChange change) |
再実装されたプロテクト関数
virtual void | changeEvent(QEvent *ev) override |
virtual bool | event(QEvent *e) override |
virtual void | keyPressEvent(QKeyEvent *ev) override |
virtual void | timerEvent(QTimerEvent *e) override |
virtual void | wheelEvent(QWheelEvent *e) override |
詳しい説明
このクラスはQScrollBar,QSlider,QDial のようなウィジェットの共通のスーパークラスとして設計されています。
以下は、このクラスの主なプロパティです:
- value:QAbstractSlider が保持する境界付き整数。
- minimum:可能な最小値。
- maximum:可能な最高値。
- singleStep:抽象的なスライダーが提供する2つの自然なステップのうち小さい方のステップ。
- pageStep:抽象的なスライダーが提供する2つの自然なステップのうち大きい方で、通常ユーザーがPageUpまたはPageDownを押すことに対応する。
- tracking:スライダーのトラッキングが有効かどうか。
- sliderPosition:スライダーの現在位置。tracking が有効な場合(デフォルト)、これはvalue と同じです。
Unity (1)は3番目のステップサイズとみなすことができます。setValue() を使用すると、n の整数値に対してminimum() +n*singleStep() だけでなく、許容範囲内の任意の整数に現在値を設定できます。ウィジェットによっては、ユーザが任意の値を設定できるものもありますし、singleStep() やpageStep() の倍数だけを提供するものもあります。
QAbstractSlider は包括的なシグナルを発します:
シグナル | 次のときに発信されます。 |
---|---|
valueChanged() | 値が変更された時に発行されます。tracking は、このシグナルがユーザーとのインタラクション中に発せられるかどうかを決定します。 |
sliderPressed() | ユーザがスライダーをドラッグし始めたとき。 |
sliderMoved() | ユーザーがスライダーをドラッグした。 |
sliderReleased() | スライダーを離す |
actionTriggered() | スライダーアクションがトリガーされた。 |
rangeChanged() | 範囲が変更された。 |
QAbstractSlider は、スライダーのオンスクリーン表示を更新するのに適した仮想sliderChange() 関数を提供します。triggerAction() を呼び出すことで、サブクラスはスライダーアクションをトリガーします。2つのヘルパー関数QStyle::sliderPositionFromValue() とQStyle::sliderValueFromPosition() は、サブクラスとスタイルがスクリーン座標を論理範囲値にマッピングするのを助けます。
QAbstractSpinBox,QSlider,QDial,QScrollBar,スライダーの例も参照 。
メンバ型ドキュメント
enum QAbstractSlider::SliderAction
定数 | 定数 |
---|---|
QAbstractSlider::SliderNoAction | 0 |
QAbstractSlider::SliderSingleStepAdd | 1 |
QAbstractSlider::SliderSingleStepSub | 2 |
QAbstractSlider::SliderPageStepAdd | 3 |
QAbstractSlider::SliderPageStepSub | 4 |
QAbstractSlider::SliderToMinimum | 5 |
QAbstractSlider::SliderToMaximum | 6 |
QAbstractSlider::SliderMove | 7 |
enum QAbstractSlider::SliderChange
定数 | 定数 |
---|---|
QAbstractSlider::SliderRangeChange | 0 |
QAbstractSlider::SliderOrientationChange | 1 |
QAbstractSlider::SliderStepsChange | 2 |
QAbstractSlider::SliderValueChange | 3 |
プロパティ・ドキュメンテーション
invertedAppearance : bool
このプロパティは、スライダがその値を反転して表示するかどうかを保持します。
このプロパティがfalse
(デフォルト) の場合、最小値と最大値は、継承されたウィジェットの古典的な位置に表示されます。値がtrueの場合、最小値と最大値は反対の位置に表示されます。
注意: このプロパティは、スライダとダイヤルで最も意味を持ちます。スクロールバーの場合、スクロールバーサブコントロールの視覚効果は、スタイルが反転表示を理解するかどうかに依存します。
アクセス関数:
bool | invertedAppearance() const |
void | setInvertedAppearance(bool) |
invertedControls : bool
このプロパティは、スライダーがホイールとキーイベントを反転させるかどうかを保持します。
このプロパティがfalse
の場合、マウスホイールを "up" にスクロールし、page up のようなキーを使用すると、スライダーの値は最大値に向かって増加します。そうでない場合、page up を押すと、値はスライダーの最小値に移動します。
アクセス関数
bool | invertedControls() const |
void | setInvertedControls(bool) |
maximum : int
このプロパティは、スライダーの最大値を保持します。
このプロパティを設定するとき、minimum は、範囲が有効なままであることを保証するために、必要に応じて調整されます。また、スライダーの現在値は、新しい範囲内になるように調整されます。
アクセス関数
int | maximum() const |
void | setMaximum(int) |
minimum : int
このプロパティは、スライダーの最小値を保持します。
このプロパティを設定するとき、maximum は、範囲が有効なままであることを保証するために、必要に応じて調整されます。また、スライダーの現在値は新しい範囲内になるように調整されます。
アクセス関数
int | minimum() const |
void | setMinimum(int) |
orientation : Qt::Orientation
このプロパティは、スライダーの向きを保持します。
向きはQt::Vertical (デフォルト) またはQt::Horizontal でなければなりません。
アクセス関数:
Qt::Orientation | orientation() const |
void | setOrientation(Qt::Orientation) |
pageStep : int
このプロパティはページステップを保持する。
抽象的なスライダーが提供する2つの自然なステップのうち大きい方で、一般的にユーザがPageUpまたはPageDownを押すことに対応する。
アクセス関数:
int | pageStep() const |
void | setPageStep(int) |
singleStepも参照してください 。
singleStep : int
このプロパティはシングルステップを保持する。
抽象スライダが提供する2つの自然なステップのうち小さい方で、通常、ユーザが矢印キーを押すことに対応する。
オートリピートキーイベント中にこのプロパティが変更された場合、動作は未定義となる。
アクセス関数:
int | singleStep() const |
void | setSingleStep(int) |
pageStepも参照してください 。
sliderDown : bool
このプロパティは、スライダーが押し下げられたかどうかを保持します。
このプロパティは、tracking が何らかの効果を持つかどうかを抽象スライダに知らせるために、サブクラスによって設定されます。
スライダーを押し下げるプロパティを変更すると、sliderPressed() とsliderReleased() シグナルが出力されます。
アクセス関数:
bool | isSliderDown() const |
void | setSliderDown(bool) |
sliderPosition : int
このプロパティは、現在のスライダーの位置を保持します。
tracking が有効な場合 (デフォルト)、これはvalue と同じです。
アクセス関数
int | sliderPosition() const |
void | setSliderPosition(int) |
通知シグナル:
void | sliderMoved(int value) |
tracking : bool
このプロパティは、スライダーのトラッキングが有効かどうかを保持します。
トラッキングが有効な場合 (デフォルト)、スライダーがドラッグされている間、スライダーはvalueChanged() シグナルを発します。トラッキングが無効の場合、スライダーは、ユーザがスライダーを離したときのみvalueChanged() シグナルを発します。
アクセス関数:
bool | hasTracking() const |
void | setTracking(bool enable) |
sliderDownも参照してください 。
value : int
このプロパティは、スライダーの現在値を保持します。
このスライダーは、値を強制的に有効範囲内にします:minimum <=value
<=maximum 。
値を変更すると、sliderPosition も変更されます。
アクセス関数
int | value() const |
void | setValue(int) |
通知シグナル
void | valueChanged(int value) |
メンバ関数ドキュメント
[explicit]
QAbstractSlider::QAbstractSlider(QWidget *parent = nullptr)
抽象スライダーを構築する。
parent 引数はQWidget コンストラクタに送られます。
minimum のデフォルトは 0、maximum のデフォルトは 99、singleStep のサイズは 1、pageStep のサイズは 10、value の初期値は 0 です。
[virtual noexcept]
QAbstractSlider::~QAbstractSlider()
スライダーを破壊する。
[signal]
void QAbstractSlider::actionTriggered(int action)
このシグナルは、スライダーアクションaction がトリガーされたときに発せられます。アクションはSliderSingleStepAdd 、SliderSingleStepSub 、SliderPageStepAdd 、SliderPageStepSub 、SliderToMinimum 、SliderToMaximum 、SliderMove 。
このシグナルが発せられたとき、sliderPosition はアクションに従って調整されていますが、value はまだ伝播されておらず(つまりvalueChanged() シグナルはまだ発せられ ていない)、ビジュアル表示は更新されていません。したがって、このシグナルに接続されたスロットでは、アクションとスライダーの値の両方に基づいて、setSliderPosition() を自分で呼び出すことで、アクションを安全に調整することができます。
triggerAction()も参照してください 。
[override virtual protected]
void QAbstractSlider::changeEvent(QEvent *ev)
再実装:QWidget::changeEvent(QEvent *event)。
[override virtual protected]
bool QAbstractSlider::event(QEvent *e)
再実装:QWidget::event(QEvent *event)。
[override virtual protected]
void QAbstractSlider::keyPressEvent(QKeyEvent *ev)
再実装:QWidget::keyPressEvent(QKeyEvent *event)。
[signal]
void QAbstractSlider::rangeChanged(int min, int max)
このシグナルは、スライダーの範囲が変更されたときに発せられ、min が新しい最小値、max が新しい最大値となる。
[protected]
QAbstractSlider::SliderAction QAbstractSlider::repeatAction() const
現在のリピートアクションを返します。
setRepeatAction()も参照してください 。
[slot]
void QAbstractSlider::setRange(int min, int max)
スライダーの最小値をmin に、最大値をmax に設定します。
max がmin より小さい場合、min が唯一の正当な値になります。
[protected]
void QAbstractSlider::setRepeatAction(QAbstractSlider::SliderAction action, int thresholdTime = 500, int repeatTime = 50)
アクションaction を、thresholdTime の初期遅延の後、repeatTime の間隔で繰り返しトリガーされるように設定する。
triggerAction() およびrepeatAction()も参照 。
[virtual protected]
void QAbstractSlider::sliderChange(QAbstractSlider::SliderChange change)
この仮想関数を再実装して、SliderRangeChange 、SliderOrientationChange 、SliderStepsChange 、SliderValueChange のようなスライダの変更をトラッキングする。デフォルトの実装では、表示のみを更新し、change パラメータを無視する。
[signal]
void QAbstractSlider::sliderMoved(int value)
このシグナルは、sliderDown が真で、スライダーが動いたときに発せられます。これは通常、ユーザーがスライダーをドラッグしているときに発生します。value が新しいスライダーの位置です。
このシグナルは、トラッキングがオフになっている場合でも発行されます。
注意: sliderPosition プロパティに対するノーティファイア・シグナルです。
setTracking(),valueChanged(),isSliderDown(),sliderPressed(),sliderReleased()も参照してください 。
[signal]
void QAbstractSlider::sliderPressed()
このシグナルは、ユーザーがマウスでスライダーを押したとき、またはsetSliderDown(true) がコールされたときにプログラムで発せられる。
sliderReleased(),sliderMoved(),isSliderDown()も参照してください 。
[signal]
void QAbstractSlider::sliderReleased()
このシグナルは、ユーザーがマウスでスライダーを放したとき、またはsetSliderDown(false) がコールされたときにプログラムで発せられます。
sliderPressed(),sliderMoved(),sliderDownも参照してください 。
[override virtual protected]
void QAbstractSlider::timerEvent(QTimerEvent *e)
再実装:QObject::timerEvent(QTimerEvent *event).
void QAbstractSlider::triggerAction(QAbstractSlider::SliderAction action)
スライダーaction をトリガーします。可能なアクションはSliderSingleStepAdd,SliderSingleStepSub,SliderPageStepAdd,SliderPageStepSub,SliderToMinimum,SliderToMaximum,SliderMove 。
actionTriggered()も参照 。
[signal]
void QAbstractSlider::valueChanged(int value)
このシグナルは、新しいスライダーvalue を引数として、スライダーの値が変更されたときに発行されます。
注: プロパティvalue に対するノーティファイアシグナル。
[override virtual protected]
void QAbstractSlider::wheelEvent(QWheelEvent *e)
再実装:QWidget::wheelEvent(QWheelEvent *event)。
© 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.