QT C++图形界面编程技术

2026/4/29 11:14:11

voidon_SaveButton_clicked();

private:

Ui::Widget *ui;

QImagefinal_pix; //最终的截图 };

#endif// WIDGET_H

////

widget.ccp

#include\ #include\ #include #include #include\

Widget::Widget(QWidget *parent) : QWidget(parent), ui(newUi::Widget) {

ui->setupUi(this);

this->setFixedSize(265,90);

this->setWindowTitle(\); }

Widget::~Widget() {

deleteui; } /**

按钮Cut被按下后,截图查看器PSee隐藏,主窗口隐藏,然后调用全屏截图器FEdit的

init()来获得

当前窗口的背景,并全屏显示 */

void Widget::on_CutButton_clicked() {

this->showMinimized();

this->hide();

emit StartCut(); //发出开始截图StartCut信号 } /**

保存按钮按下后,选择保存的位置,然后保存,保存成功后,截图查看器PSee隐藏,否则发出warning */

void Widget::on_SaveButton_clicked() {

QStringsaveName = QFileDialog::getSaveFileName (this, tr(\),\,

tr(\File(*.JPG)\));

if(saveName.isNull()) //没有选择路径,则返回主窗口 return;

if(final_pix.save(saveName))

emit PicSaved(); ////图片成功保存的信号 else

QMessageBox::warning(this,\,\); } /**

Get_Pix() 是下个SLOT,当FEdit发出Send_Pix信号时,主窗口就用Get_Pix来接收发出的图片指针

然后Enable保存按钮,显示主窗口,

然后将此图片的指针发给截图查看器PSee,并在截图查看器PSee显示此图片

*/

void Widget::Get_Pix_Show(QImage *final_pix) {

this->final_pix = *final_pix; //接收发出的图片指针

ui->SaveButton->setEnabled(true); //这里可保存了,则使保存按钮显示

this->showNormal();// }

//// FullEdit.h

#ifndef FULLEDIT_H #define FULLEDIT_H

#include

classQPixmap;

classFullEdit : publicQWidget {

Q_OBJECT public:

explicitFullEdit(QWidget *parent = 0);

QImageConverToShadow(QImage pix); //将原图转换为半透明的图片

//从原图pre在载取坐标(x1,y1),(x2,y2)所包围的部分区域的图片 QImage _Cut(QImagepre,int x1,int y1,int x2,int y2);

signals:

voidFinishCut(QImage *final_pix); //当用户释放左键时,用signal发送图片的指针

voidCancleCut(); //当用户在FullEdit上单击左键时,发出截图取消信号

public slots:

//收到StartCut信号后,FullEdit先初始化,记录下此时刻的屏幕背景,并全屏显示

voidInit_FCShow();

protected:

voidmousePressEvent(QMouseEvent *);

voidmouseMoveEvent(QMouseEvent *);

voidmouseReleaseEvent(QMouseEvent *);

voidpaintEvent(QPaintEvent *);

private:

QImage _screen; //存放当前的全屏的截图

QImage _shadow; //存放当前全屏截图的半透明的幅本

int x1,y1,x2,y2; //当前选定区域的两角的坐标

boolisLeftDown; //记录当前左键是否被按下 };

#endif// FULLEDIT_H

////

FullEdit.cpp

#include\ #include

#include #include #include

//#include

//#define myDebug


QT C++图形界面编程技术.doc 将本文的Word文档下载到电脑
搜索更多关于: QT C++图形界面编程技术 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219