QSizeGrip Class
QSizeGrip クラスは、トップレベルウィンドウのサイズ変更を行うためのサイズ変更ハンドルを提供します。詳細...
| ヘッダー: | #include <QSizeGrip> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 継承元: | QWidget |
パブリック関数
| QSizeGrip(QWidget *parent) | |
| virtual | ~QSizeGrip() |
再実装されたパブリック関数
| virtual void | setVisible(bool visible) override |
| virtual QSize | sizeHint() const override |
再実装されたプロテクト関数
| virtual bool | event(QEvent *event) override |
| virtual bool | eventFilter(QObject *o, QEvent *e) override |
| virtual void | hideEvent(QHideEvent *hideEvent) override |
| virtual void | mouseMoveEvent(QMouseEvent *event) override |
| virtual void | mousePressEvent(QMouseEvent *event) override |
| virtual void | mouseReleaseEvent(QMouseEvent *mouseEvent) override |
| virtual void | moveEvent(QMoveEvent *moveEvent) override |
| virtual void | paintEvent(QPaintEvent *event) override |
| virtual void | showEvent(QShowEvent *showEvent) override |
詳細説明
このウィジェットは、標準の Windows リサイズハンドルと同様に機能します。X11 バージョンでは、X11 ウィンドウマネージャーが必要な最新の ICCCM 以降の仕様をサポートしていない場合、このリサイズハンドルの動作は、システムが提供するものと一般的に異なります。
このウィジェットをウィジェットツリー内の任意の場所に配置すると、ユーザーはこれを使用して、トップレベルウィンドウや、Qt::SubWindow フラグが設定された任意のウィジェットのサイズを変更できます。通常、これは右下隅に配置すべきです。
なお、QStatusBar ではすでにこのウィジェットが使用されているため、ステータスバーがある場合(例:QMainWindow を使用している場合)、このウィジェットを明示的に使用する必要はありません。QDialog についても同様で、この場合は単にQDialog::setSizeGripEnabled()を呼び出すだけで済みます。
一部のプラットフォームでは、ウィンドウが全画面表示または最大化されると、サイズグリップが自動的に非表示になります。
注: macOSでは 、サイズグリップはもはやヒューマンインターフェースガイドラインの一部ではなく、QMdiSubWindow 内で使用されない限り表示されません。メインウィンドウで表示させたいサイズグリップには、別のスタイルを設定してください。

メインウィンドウの右下隅にあるサイズグリップウィジェット。Fusion ウィジェットスタイルで表示されています。
QSizeGripクラスはQWidget を継承し、mousePressEvent()およびmouseMoveEvent()関数を再実装してサイズ変更機能を実現するとともに、paintEvent()関数を再実装してサイズグリップウィジェットを描画します。
QStatusBar およびQWidget::windowState()も参照してください 。
メンバ関数のドキュメント
[explicit] QSizeGrip::QSizeGrip(QWidget *parent)
指定されたparent の子ウィジェットとして、サイズ変更用のコーナーを作成します。
[virtual noexcept] QSizeGrip::~QSizeGrip()
このサイズのグリップを破壊する。
[override virtual protected] bool QSizeGrip::event(QEvent *event)
QWidget::event(QEvent *event) を再実装します。
[override virtual protected] bool QSizeGrip::eventFilter(QObject *o, QEvent *e)
QObject::eventFilter(QObject *watched, QEvent *event) を再実装します。
[override virtual protected] void QSizeGrip::hideEvent(QHideEvent *hideEvent)
QWidget::hideEvent(QHideEvent *event) を再実装します。
[override virtual protected] void QSizeGrip::mouseMoveEvent(QMouseEvent *event)
QWidget::mouseMoveEvent(QMouseEvent *event) を再実装します。
このウィジェットを含む最上位のウィジェットのサイズを変更します。マウスの移動イベントは、event パラメータを通じて渡されます。
[override virtual protected] void QSizeGrip::mousePressEvent(QMouseEvent *event)
QWidget::mousePressEvent(QMouseEvent *event) を再実装します。
ウィジェットのマウス押下イベントを受け取り、サイズ変更操作の準備を行います。マウス押下イベントは、event パラメータを通じて渡されます。
[override virtual protected] void QSizeGrip::mouseReleaseEvent(QMouseEvent *mouseEvent)
QWidget::mouseReleaseEvent(QMouseEvent *event) の再実装です。
[override virtual protected] void QSizeGrip::moveEvent(QMoveEvent *moveEvent)
QWidget::moveEvent(QMoveEvent *event) を再実装します。
[override virtual protected] void QSizeGrip::paintEvent(QPaintEvent *event)
QWidget::paintEvent (QPaintEvent *event)を再実装します。
リサイズグリップを描画します。
サイズ変更グリップは通常、右下隅に小さな斜めのテクスチャ付きラインとして描画されます。ペイントイベントは、event パラメータとして渡されます。
[override virtual] void QSizeGrip::setVisible(bool visible)
プロパティ「QWidget::visible 」のアクセス関数を再実装します。
[override virtual protected] void QSizeGrip::showEvent(QShowEvent *showEvent)
QWidget::showEvent(QShowEvent *event) を再実装します。
[override virtual] QSize QSizeGrip::sizeHint() const
プロパティ「QWidget::sizeHint 」のアクセス関数を再実装します。
© 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.