⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shapewidget.cpp

📁 linux窗口程序设计一书的第三章代码-对话框进阶,希望对大家有用
💻 CPP
字号:
#include "shapewidget.h"

ShapeWidget::ShapeWidget(QWidget *parent)
	: QWidget(parent,Qt::FramelessWindowHint)
{
    QPixmap pix;
    pix.load(":/images/tux.png",0,Qt::AvoidDither|Qt::ThresholdDither|Qt::ThresholdAlphaDither);
    resize(pix.size());
    setMask(pix.mask());
}

void ShapeWidget::mousePressEvent(QMouseEvent * event)
{
    if (event->button() == Qt::LeftButton) 
    {
         dragPosition = event->globalPos() - frameGeometry().topLeft();
         event->accept();
    }
    if (event->button() == Qt::RightButton) 
    {
         close();
    }
}

void ShapeWidget::mouseMoveEvent(QMouseEvent * event)
{
    if (event->buttons() & Qt::LeftButton) 
    {
         move(event->globalPos() - dragPosition);
         event->accept();
    }
}

void ShapeWidget::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    painter.drawPixmap(0,0,QPixmap(":/images/tux.png"));   
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -