QSlider Class

QSlider ウィジェットは垂直または水平スライダーを提供します。詳細...

Header: #include <QSlider>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Inherits: QAbstractSlider

パブリックタイプ

enum TickPosition { NoTicks, TicksBothSides, TicksAbove, TicksBelow, TicksLeft, TicksRight }

プロパティ

パブリック関数

QSlider(QWidget *parent = nullptr)
QSlider(Qt::Orientation orientation, QWidget *parent = nullptr)
virtual ~QSlider()
void setTickInterval(int ti)
void setTickPosition(QSlider::TickPosition position)
int tickInterval() const
QSlider::TickPosition tickPosition() const

再実装パブリック関数

virtual bool event(QEvent *event) override
virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override

保護された関数

virtual void initStyleOption(QStyleOptionSlider *option) const

再実装された保護された関数

virtual void mouseMoveEvent(QMouseEvent *ev) override
virtual void mousePressEvent(QMouseEvent *ev) override
virtual void mouseReleaseEvent(QMouseEvent *ev) override
virtual void paintEvent(QPaintEvent *ev) override

詳しい説明

スライダーは、境界値を制御するための古典的なウィジェットです。水平または垂直の溝に沿ってスライダーハンドルを動かすことができ、ハンドルの位置は法定範囲内の整数値に変換されます。

QSlider はそれ自身の関数をほとんど持っていません;ほとんどの機能はQAbstractSlider にあります。最も便利な関数は、スライダーをある値に直接設定するsetValue(); クリックの効果をシミュレートするtriggerAction() (ショートカットキーに便利); ステップを設定するsetSingleStep(),setPageStep(); スクロールバーの範囲を定義するsetMinimum(),setMaximum() です。

QSlider はティックマークをコントロールするメソッドを提供します。setTickPosition() で目盛りの位置を、setTickInterval() で目盛りの数を指定できます。現在設定されている目盛りの位置と間隔は、それぞれtickPosition() とtickInterval() 関数を使って問い合わせることができます。

QSlider はシグナルの包括的なセットを継承しています:

シグナルシグナル
valueChanged()スライダーの値が変更されたときに発信されます。tracking()は、ユーザーとのインタラクション中にこのシグナルが発せられるかどうかを決定します。
sliderPressed()ユーザーがスライダーをドラッグし始めたときに発せられる。
sliderMoved()ユーザーがスライダーをドラッグしたときに発せられます。
sliderReleased()ユーザがスライダを離したときに発行されます。

QSlider は整数範囲のみを提供します。QSlider は非常に大きな数値を扱いますが、ユーザが非常に大きな範囲のスライダーを正確に使用するのは難しくなることに注意してください。

スライダーは Tab でフォーカスを受け、マウス・ホイールとキーボード・インターフェースの両方を提供します。キーボード・インターフェースは以下の通りです:

  • 左/右は水平スライダーを1ステップ移動させます。
  • Up/Downは垂直方向のスライダーを1ステップ移動します。
  • PageUp は1ページ分上に移動します。
  • PageDown は1ページ下に移動します。
  • Homeは開始位置(最小)に移動します。
  • Endは最後(最大)に移動する。

QScrollBar,QSpinBox,QDial,Sliders Exampleも参照のこと

メンバ型ドキュメント

enum QSlider::TickPosition

この列挙型は、スライダーの溝とユーザーが動かしたハンドルに対して、目盛りをどこに描くかを指定します。

定数説明
QSlider::NoTicks0目盛りマークを描画しない。
QSlider::TicksBothSides3溝の両側に目盛りマークを描画します。
QSlider::TicksAbove1(水平)スライダーの上に目盛りマークを描画する。
QSlider::TicksBelow2(水平)スライダーの下に目盛りマークを描く
QSlider::TicksLeftTicksAbove(縦)スライダーの左に目盛りマークを描く
QSlider::TicksRightTicksBelow(縦)スライダーの右側にテロップを描く

プロパティの説明

tickInterval : int

このプロパティは目盛りの間隔を保持します。

これはピクセル間隔ではなく値間隔です。これが0の場合、スライダーはsingleStepとpageStepのどちらかを選択します。

デフォルト値は0である。

アクセス関数:

int tickInterval() const
void setTickInterval(int ti)

tickPositionsingleSteppageStepも参照

tickPosition : TickPosition

このプロパティは、このスライダのティックマーク位置を保持します。

有効な値はQSlider::TickPosition enumで記述されています。

デフォルト値はQSlider::NoTicks です。

アクセス関数:

QSlider::TickPosition tickPosition() const
void setTickPosition(QSlider::TickPosition position)

tickIntervalも参照してください

メンバ関数ドキュメント

[explicit] QSlider::QSlider(QWidget *parent = nullptr)

与えられたparent で垂直スライダーを構築します。

[explicit] QSlider::QSlider(Qt::Orientation orientation, QWidget *parent = nullptr)

与えられたparent でスライダーを構築します。orientation パラメータはスライダーが水平か垂直かを決定します。有効な値はQt::VerticalQt::Horizontal です。

[virtual noexcept] QSlider::~QSlider()

このスライダーを破棄します。

[override virtual] bool QSlider::event(QEvent *event)

このスライダーを破棄します:QAbstractSlider::event(QEvent *e)。

[virtual protected] void QSlider::initStyleOption(QStyleOptionSlider *option) const

このQSlider の値でoption を初期化します。このメソッドは、サブクラスがQStyleOptionSlider を必要とするが、すべての情報を自分で入力したくない場合に便利です。

QStyleOption::initFrom()も参照

[override virtual] QSize QSlider::minimumSizeHint() const

プロパティのアクセス関数を再インプリメントします:QWidget::minimumSizeHint

[override virtual protected] void QSlider::mouseMoveEvent(QMouseEvent *ev)

再実装:QWidget::mouseMoveEvent(QMouseEvent *event)。

[override virtual protected] void QSlider::mousePressEvent(QMouseEvent *ev)

再実装:QWidget::mousePressEvent(QMouseEvent *event)。

[override virtual protected] void QSlider::mouseReleaseEvent(QMouseEvent *ev)

再リンプルメント: (QMouseEvent *event):QWidget::mouseReleaseEvent(QMouseEvent *event).

[override virtual protected] void QSlider::paintEvent(QPaintEvent *ev)

再リンプルメント: (QMouseEvent *event):QWidget::paintEvent(QPaintEvent *event)。

[override virtual] QSize QSlider::sizeHint() const

プロパティへのアクセス関数を再実装しています:QWidget::sizeHint.

©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。