rubberband.cpp
来自「linux窗口程序设计一书的第五章代码-- 图形与图画,希望对大家有用」· C++ 代码 · 共 35 行
CPP
35 行
#include "rubberband.h"
RubberBand::RubberBand(QWidget *parent)
: QMainWindow(parent)
{
QWidget *mainWidget = new QWidget;
mainWidget->setBackgroundRole(QPalette::Light);
mainWidget->setAutoFillBackground(true);
setCentralWidget(mainWidget);
resize(600,400);
setWindowTitle(tr("Rubberband"));
rubberBand = NULL;
}
void RubberBand::mousePressEvent(QMouseEvent * e)
{
origin = e->pos();
if (!rubberBand)
rubberBand = new QRubberBand(QRubberBand::Rectangle, this);
rubberBand->setGeometry(QRect(origin, QSize()));
rubberBand->show();
}
void RubberBand::mouseMoveEvent(QMouseEvent * e)
{
if (rubberBand)
rubberBand->setGeometry(QRect(origin, e->pos()).normalized());
}
void RubberBand::mouseReleaseEvent(QMouseEvent * e)
{
if (rubberBand)
rubberBand->hide();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?