1 / 16
文档名称:

qt画图实验报告.docx

格式:docx   大小:20KB   页数:16页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

qt画图实验报告.docx

上传人:rdwiirh 2018/10/16 文件大小:20 KB

下载得到文件列表

qt画图实验报告.docx

文档介绍

文档介绍:qt画图实验报告
篇一:QT综合作业实验报告
一、实验目的
1, 了解并掌握Qt集成开发环境下使用Qt Designer开发图形界面程序的流程和相关
操作;
2, 了解并掌握Qt的信号槽和信号传递机制,并通过具体应用加深理解;
3, 了解并掌握使Qt应用程序支持中文或国际化的方法,并在本次实验中使用; 4, 了解并掌握QPainter的translate、shear等库函数的使用方法和Widget类的使
用方法,并通过本次实验加深理解;
5, 掌握在Qt Designer界面上为菜单项添加工具栏按钮、创建相应槽函数的方法; 6, 了解并掌握使用双缓冲机制绘图的方法。
二、实验环境
操作系统:Windows 7
应用软件:Qt Creator
开发平台:qt-sdk-win-opensource-
三、程序流程图
:
四、核心源代码
(实现菜单项的功能和绘图功能的调用)
#include ""
#include ""
#include ""
#include
#include
#include
#include ""
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
setWindowTitle(tr("Qt绘图板"));
setFixedSize(700,500); //主窗口大小设为700*500
area = new PaintArea;
scrollArea = new QScrollArea;
scrollArea->setBackgroundRole(QPalette::Dark); //scrollArea对象的背景色设为Dark scrollArea->setWidget(area); //将画布添加到scrollArea中
scrollArea->widget()->setMinimumSize(800,600); //scrollArea初始化大小设为800*600
ui->dockWidget->hide();
setCentralWidget(scrollArea); //将scrollArea加入到主窗口的中心区
isSaved = false;
curFile = tr("");
boBox(ui->boBox); //画笔颜色组合框
boBox(ui->boBox); //填充颜色组合框
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::changeEvent(QEvent *e)
{
QMainWindow::changeEvent(e);
switch (e->type()) {
case QEvent::LanguageChange:
ui->retranslateUi(this);
break;
default:
break;
}
}
void MainWindow::doOpen()
{
if (maybeSave())
{
QString fileName = QFileDialog::getOpenFileName(this,
tr("打开文件"), QDir::currentPath());
if (!())
{
area->openImage(fileName);
scrollArea->widget()->resize(area->getImageSize());
//获得图片的大小,然后更改scrollArea的大小
isSaved = true;
curFile = fileName;
}
}
}
void MainWindow::doNew()
{
if(maybeSave())
{
DoNewDialog dlg;
if(() == QDialog::Accepted)
{
int width = ();
int height = ();
area->setImag