91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 1.72MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2023-11-04
  • 語言: 其他
  • 標簽: Qt??

資源簡介

用Qt寫的截圖工具,實現了點擊按鈕背景色變暗,可用鼠標框選要截圖的區域,并保存至本地文件。內含完整的工程文件。

資源截圖

代碼片段和文件信息

#include?“capturescreen.h“

CaptureScreen::CaptureScreen(QWidget?*parent?Qt::WFlags?flags)
:?QMainWindow(parent?flags)
{
ui.setupUi(this);

InitWindow();
}

CaptureScreen::~CaptureScreen()
{

}
void?CaptureScreen::InitWindow()
{

Rubber?=?NULL;
ScreenHeight?=?0;
ScreenWidth?=?0;
info?=?new?QImage(“infoa.png“);
GImage?=?QPixmap();
MouseStart?=?QPoint(00);
MouseEnd?=QPoint(00);
//this->setMouseTracking(true);
//setWindowState(Qt::WindowActive?|?Qt::WindowFullScreen);

WholeWindow?=?QPixmap::grabWindow(QApplication::desktop()->winId());
WholeWindow.save(“tmp.png“);
bg?=?QImage(“tmp.png“);

QFile?*tmp?=?new?QFile(“tmp.png“);
tmp->remove();

ChangeLight(00bg.width()?bg.height()?0.6);

//獲取桌面尺寸
QDesktopWidget?*desktop?=?QApplication::desktop();
QRect?DesktopRect?=?desktop->screenGeometry();
ScreenWidth?=?DesktopRect.width();
ScreenHeight?=?DesktopRect.height();
this->resize(ScreenWidth?ScreenHeight);
//按鈕?點擊之后就消失
BtnPress?=?new?QPushButton(tr(“截圖“)?this);
BtnPress->setWindowFlags(Qt::framelessWindowHint?|?Qt::WindowStaysOnTopHint);
BtnPress->setGeometry(ScreenWidth/2?-100ScreenHeight/2?-2520050);
BtnPress->show();
connect(BtnPress?SIGNAL(clicked())?BtnPress?SLOT(close()));

Label?=?new?QLabel(““this);
InfoLabel?=?new?QLabel(““this);
Label->setWindowFlags(Qt::framelessWindowHint?|?Qt::WindowStaysOnTopHint);
this->setWindowFlags(Qt::framelessWindowHint);


}
void?CaptureScreen::ChangeLight(int?x?int?y?int?width?int?height?double?bright)
{
int?redbluegreen;
for?(int?i=0;?i {
for?(int?j=0;?j {
red?=?qRed(bg.pixel(ij))?*?bright;
green?=?qGreen(bg.pixel(ij))?*?bright;
blue?=?qBlue(bg.pixel(ij))?*?bright;
bg.setPixel(ijqRgb(red?green?blue));
}
}
}
void?CaptureScreen::mousePressEvent(QMouseEvent?*e)
{
if(e->button()?==?Qt::LeftButton)
{
InfoLabel->setPixmap(QPixmap::fromImage(*info));
InfoLabel->setWindowFlags(Qt::framelessWindowHint);
InfoLabel->move(QPoint(e->pos().x()?+?30?e->pos().y()+30));
InfoLabel->show();

BtnPress->close();

//初始化框
if?(!Rubber)
{
Rubber?=?new?QRubberBand(QRubberBand::Line?this);
}
Rubber->show();

//記錄鼠標起始位置
MouseStart?=?e->pos();
//將框放置于起始位置
Rubber->setGeometry(MouseStart.x()?MouseStart.y()?0?0);

//顯示坐標
SetLabel();
}
else?if?(e->button()?==?Qt::RightButton)
{
BtnPress->close();
InfoLabel->close();
this->close();
}
}
void?CaptureScreen::mouseDoubleClickEvent(QMouseEvent?*e)
{
//截取全屏
if?(e->button()?==?Qt::LeftButton)
{
BtnPress->close();
QString?filename?=?QFileDialog::getSaveFileName(this?tr(“save?picture“)?“.“?tr(“Image?Files(*.png)“));

WholeWindow.save(filename);
InfoLabel->close();
this->close();
}
}
void?CaptureScreen::mouseMoveEvent(QMouseEvent?*e)
{
if?(Rubber)
{
InfoLabel->move(QPoint(e->pos().x()+30?e->pos().y()?+30));

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????5433??2018-11-22?09:41??CaptureScreen\CaptureScreen\capturescreen.cpp

?????文件???????1029??2018-11-22?09:41??CaptureScreen\CaptureScreen\capturescreen.h

?????文件?????????73??2018-11-22?09:41??CaptureScreen\CaptureScreen\capturescreen.qrc

?????文件????????820??2018-11-22?09:41??CaptureScreen\CaptureScreen\capturescreen.ui

?????文件??????10209??2018-11-22?09:41??CaptureScreen\CaptureScreen\CaptureScreen.vcproj

?????文件???????2455??2018-11-22?09:41??CaptureScreen\CaptureScreen\GeneratedFiles\Debug\moc_capturescreen.cpp

?????文件????????739??2018-11-22?09:41??CaptureScreen\CaptureScreen\GeneratedFiles\qrc_capturescreen.cpp

?????文件???????2455??2018-11-22?09:41??CaptureScreen\CaptureScreen\GeneratedFiles\Release\moc_capturescreen.cpp

?????文件???????2416??2018-11-22?09:41??CaptureScreen\CaptureScreen\GeneratedFiles\ui_capturescreen.h

?????文件????????309??2018-11-22?09:41??CaptureScreen\CaptureScreen\main.cpp

?????文件????9784320??2018-11-22?09:41??CaptureScreen\CaptureScreen.ncb

?????文件????????905??2018-11-22?09:41??CaptureScreen\CaptureScreen.sln

?????文件??????10240??2018-11-22?09:41??CaptureScreen\CaptureScreen.suo

?????目錄??????????0??2018-11-22?09:49??CaptureScreen\CaptureScreen\GeneratedFiles\Debug

?????目錄??????????0??2018-11-22?09:49??CaptureScreen\CaptureScreen\GeneratedFiles\Release

?????目錄??????????0??2018-11-22?09:49??CaptureScreen\CaptureScreen\GeneratedFiles

?????目錄??????????0??2018-11-22?09:41??CaptureScreen\CaptureScreen\Resources

?????目錄??????????0??2018-12-03?21:46??CaptureScreen\CaptureScreen

?????目錄??????????0??2018-12-03?21:45??CaptureScreen

-----------?---------??----------?-----??----

??????????????9821403????????????????????19


評論

共有 條評論