QAbstractSlider Class
QAbstractSlider クラスは、範囲内の整数値を提供します。詳細...
Header: | #include <QAbstractSlider> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
Inherits: | QWidget |
Inherited By: | QDial, QScrollBar, and 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
の場合、マウスホイールを「上」にスクロールし、ページアップなどのキーを使用すると、スライダーの値が最大値に向かって増加します。そうでない場合、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) |
Notifier シグナル:
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)
再リンプルメント: (QEvent *event):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 が唯一の有効な値となります。
minimum およびmaximum も参照して ください。
[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)。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。