この記事では、新しいインターフェイス、ソース ファイル、レイアウト、プログレス バーの幅、プログレス バーの高さ、水平スクロール バーの値、垂直スクロール バーの値、イベントの移動、イベントの移動、 など、QScrollArea コントロールのさまざまな操作を詳しく紹介します。レンダリングなど。記事やその他の操作。
実際の開発では、インターフェイスに十数個のコントロールが含まれる場合があり、それらの位置を手動で調整するのは時間と労力がかかります。QScrollArea は Qt フレームワークのウィジェットで、フレーム内のサブウィジェットのコンテンツを表示するために領域をスクロールするために使用されます。ウィジェットがフレームのサイズを超える場合は、子ウィジェットの領域全体を表示できるように、ビューにスクロール バーを提供できます。子ウィジェットは setWidget() で指定する必要があります。
QT の包括的かつ詳細な説明シリーズには現在 32 の記事があります。このシリーズの記事では、QT コントロールの基本的な操作と使用法について詳しく説明します。ご注目、いいね、コレクションをありがとうございます。
この記事は著者によるオリジナルですので、転載の際は出典とこの記事へのリンクを添付してください。
QT QScrollArea コントロールの使用詳細ディレクトリ
1 新しいインターフェースを作成する
2つのソースファイル
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QDebug>
#include <QScrollArea>
#include <QScrollBar>
#include "MouseEnterEventFilter.h"
//加入UTF-8申明,否则中文乱码 全局使用GBK文件操作因为有中文所以使用
#pragma execution_character_set("utf-8")
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_scrollArea_customContextMenuRequested(const QPoint &pos);
void on_scrollArea_MouseEntered();
void on_scrollArea_SlotMouseLeft();
void on_scrollArea_horizontalValueChanged(int value);
void on_scrollArea_verticalValueChanged(int value);
private:
Ui::MainWindow *ui;
QString Title;
QString Version;
QString BlogText;
MouseEnterEventFilter *filter;
int horizontalScrollBarWidth;
int verticalScrollBarHeight;
};
#endif // MAINWINDOW_H
3 レイアウト
画像をロードし、scrollAreaWidgetContents でグリッド レイアウトを選択します
ui->label->setMinimumWidth(2560);
ui->label->setMinimumHeight(1600);
ui->label->setPixmap(QPixmap("D:/zero.jpg"));
4 プログレスバーの幅
horizontalScrollBarWidth = ui->scrollArea->horizontalScrollBar()->width();
qDebug() << "Horizontal scroll bar width: " << horizontalScrollBarWidth;
5 プログレスバーが高い
verticalScrollBarHeight = ui->scrollArea->verticalScrollBar()->height();
qDebug() << "Vertical scroll bar height: " << verticalScrollBarHeight;
6 水平スクロールバーの値
connect(ui->scrollArea->horizontalScrollBar(), &QScrollBar::valueChanged, this, &MainWindow::on_scrollArea_horizontalValueChanged);
void MainWindow::on_scrollArea_horizontalValueChanged(int value)
{
qDebug() << "水平滚动条的值: " << value;
}
7 垂直スクロールバーの値
connect(ui->scrollArea->verticalScrollBar(), &QScrollBar::valueChanged, this, &MainWindow::on_scrollArea_verticalValueChanged);
void MainWindow::on_scrollArea_verticalValueChanged(int value)
{
qDebug() << "垂直滚动条的值: " << value;
}
8 引っ越しイベント
connect(filter, &MouseEnterEventFilter::mouseEntered, this, &MainWindow::on_scrollArea_MouseEntered);
void MainWindow::on_scrollArea_MouseEntered()
{
qDebug() << "鼠标移入";
}
9 イベントの削除
connect(filter, &MouseEnterEventFilter::mouseLeft, this, &MainWindow::on_scrollArea_SlotMouseLeft);
void MainWindow::on_scrollArea_SlotMouseLeft()
{
qDebug() << "鼠标移出";
}
10 レンダリング
その他の記事11件
QT TextEdit control_Gemini Breakpoint のブログ - CSDN Blog_qt textedit
QT の使用方法の詳細な説明 QComboBox_Gemini Breakpoint のブログ - CSDN ブログ
QT QtableView 操作の詳細説明_Gemini Breakpoint のブログ - CSDN Blog_qtableview の追加、削除、変更、クエリ
Qt QStandardItemModel (1.超詳しい使い方)_Gemini Breakpointのブログ-CSDNブログ_qstandardmodel
Qt QStandardItemModel (2.超詳細な機能)_Gemini Breakpointのブログ - CSDN Blog_qstandarditemmodelクリックイベント
QT QRadioButton_Gemini Breakpoint のブログ - CSDN Blog_qt ラジオボタンの使用方法の詳細な説明
QT QLineEdit_Gemini Breakpoint の使用方法の詳細な説明 - CSDN Blog_qt qlineedit
Qt QMessageBox_Gemini Breakpoint の使用方法の詳細な説明 Blog-CSDN Blog_qt メッセージ
QChart 折れ線グラフ、円グラフ、棒グラフ、曲線グラフ_Gemini Breakpoint のブログ-CSDN ブログ_qchart スタイル
QChart 属性の詳細説明_Gemini Breakpoint のブログ - CSDN ブログ_setanimationoptions
QCharts QValueAxis use_Gemini Breakpoint のブログ-CSDN Blog_qvalueaxis
Qt 5 待機中のプロンプト ボックス (オープン ソース ダイナミック グラフィック)_Gemini Breakpoint のブログ-CSDN ブログ_Qt 待機中のダイアログ ボックス
QtDataVisualization データ 3D ビジュアライゼーション_Gemini Breakpoint のブログ-CSDN Blog_qtdatavisualizatio
QT QSpinBox 整数カウンタ コントロールの詳細な使用法_Gemini Breakpoint ブログ-CSDN BlogQT
QDoubleSpinBox 浮動小数点カウンタ コントロール (詳細な使用法)_Gemini Breakpoint ブログ-CSDN ブログ_qdoublespinbox 信号スロット
QT QSlider、QhorizontalSlider、QVerticalSlider コントロールの使い方の詳細説明_Gemini Breakpoint ブログ-CSDN blog_qslider ステップ サイズの設定
QT QTabWidget control_Gemini Breakpoint の使用方法の詳細な説明 - CSDN ブログ
QT QCalendarWidget control_Gemini Breakpoint の使用方法の詳細な説明 - CSDN ブログ
QT QStackedWidget control_Gemini Breakpoint の使用方法の詳細な説明 - CSDN ブログ
QT QVBoxLayout 垂直レイアウト コントロール_Gemini Breakpoint のブログ-CSDN ブログ
QT QHBoxLayout 水平レイアウト コントロール_Gemini ブレークポイントのブログ - CSDN ブログQT
QGridLayout グリッド レイアウト コントロール_Gemini ブレークポイントのブログ - CSDN ブログ
QT QVerticalSpacer Spring Control_Gemini Breakpoint のブログ - CSDN ブログ
QT QhorizontalSpacer Spring Control_Gemini Breakpoint のブログ - CSDN ブログ
QT QLine の詳細な使用法_Gemini Breakpoint のブログ - CSDN ブログ
QT QFontComboBox の詳細な使用法_Gemini Breakpoint のブログ - CSDN ブログ