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

📄 rubberbandwidget.cpp

📁 Trolltech公司发布的基于C++图形开发环境
💻 CPP
字号:
/****************************************************************************** $Id: qt/rubberbandwidget.cpp   3.3.4   edited May 27 2003 $**** Implementation of a widget that draws a rubberband. Designed to be used ** in an X11 overlay visual**** Copyright (C) 1999 by Trolltech AS.  All rights reserved.**** This file is part of an example program for Qt.  This example** program may be used, distributed and modified without limitation.*******************************************************************************/#include "rubberbandwidget.h"#include <qpainter.h>RubberbandWidget::RubberbandWidget( QColor transparentColor, QWidget *parent, 				    const char *name, WFlags f )    : QWidget( parent, name, f ){    setBackgroundColor( transparentColor );    on = FALSE;}void RubberbandWidget::mousePressEvent( QMouseEvent* e ){    p1 = e->pos();    p2 = p1;    p3 = p1;    on = TRUE;    setMouseTracking( TRUE );}void RubberbandWidget::mouseMoveEvent( QMouseEvent* e ){    if ( on ) {	p2 = e->pos();	QPainter p( this );	// Erase last drawn rubberband:	p.setPen( QPen( backgroundColor(), 3 ) );	p.drawRect( QRect( p1, p3 ) );	// Draw the new one:	p.setPen( QPen( white, 3 ) );	p.drawRect( QRect(p1, p2) );	p3 = p2;    }}void RubberbandWidget::mouseReleaseEvent( QMouseEvent* ){    if ( on ) {	QPainter p ( this );	p.eraseRect( rect() );    }    on = FALSE;    setMouseTracking( FALSE );}

⌨️ 快捷键说明

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