#include "mainwindow.h" #include "ui_mainwindow.h" #include "ImageEdit.h" #include "WordEditt.h" #include "ImageLabel.h" #include "imagecropperdialog.h" #include "imagecropperdemo.h" #include "vmerge.h" #include "reporting.h" #include #include "hmerge.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { setWindowState(Qt::WindowMaximized); // resize(300, 300); // int cx, cy; // //当parent为空时,窗口就显示在桌面中央 // if( NULL == parent ) // { // cx = (QApplication::desktop()->width() - width()) / 2; // cy = (QApplication::desktop()->height() - height()) / 2; // } // //否则,控件就显示在父部件中央 // else // { // cx = ( parent->width() - width() ) / 2; // cy = ( parent->height() - height() ) / 2; // } // move(cx, cy); ui->setupUi(this); ui->tabWidget->setVisible(false); ui->tabWidget->clear();//清除所有页面 ui->tabWidget->tabsClosable(); //Page有关闭按钮,可被关闭 this->setCentralWidget(ui->tabWidget); // this->setWindowState(Qt::WindowMaximized); //窗口最大化显示 this->setAutoFillBackground(true); // imageEdit=new ImageEdit(this); // imageEdit->move(250,250); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_imageMenu_triggered() { ImageEdit *imageEdit=new ImageEdit(this); imageEdit->setAttribute(Qt::WA_DeleteOnClose); int cur=ui->tabWidget->addTab(imageEdit,QString::asprintf("标注 %d",ui->tabWidget->count())); ui->tabWidget->setCurrentIndex(cur); ui->tabWidget->setVisible(true); } void MainWindow::on_wordMenu_triggered() { // WordEdit *wordEdit=new WordEdit(this); Reporting *wordEdit=new Reporting(this); wordEdit->setAttribute(Qt::WA_DeleteOnClose); int cur=ui->tabWidget->addTab(wordEdit,QString::asprintf("报告 %d",ui->tabWidget->count())); ui->tabWidget->setCurrentIndex(cur); ui->tabWidget->setVisible(true); } void MainWindow::on_tabWidget_tabCloseRequested(int index) { if (index<0) return; QWidget* aForm=ui->tabWidget->widget(index); aForm->close(); } void MainWindow::on_tabWidget_currentChanged(int index) { bool en=ui->tabWidget->count()>0; //再无页面时,actions禁用 ui->tabWidget->setVisible(en); } void MainWindow::on_imageCut_triggered() { ImageCropperDemo* dialog = new ImageCropperDemo(this); dialog->show(); } void MainWindow::on_vMergerAction_triggered() { VMerge *vmerge=new VMerge(this); vmerge->setAttribute(Qt::WA_DeleteOnClose); int cur=ui->tabWidget->addTab(vmerge,QString::asprintf("纵向图片合并 %d",ui->tabWidget->count())); ui->tabWidget->setCurrentIndex(cur); ui->tabWidget->setVisible(true); } void MainWindow::on_hMergerAction_triggered() { HMerge *hmerge=new HMerge(this); hmerge->setAttribute(Qt::WA_DeleteOnClose); int cur=ui->tabWidget->addTab(hmerge,QString::asprintf("横向图片合并 %d",ui->tabWidget->count())); ui->tabWidget->setCurrentIndex(cur); ui->tabWidget->setVisible(true); }