//------------------------------------------------------------------------------ MainWindow::MainWindow(QString args, QWidget *parent) : QMainWindow(parent), mArgsFile(args), mHasFileArgs(false) { mOfsMainWindow = this; mUnknownFileIcon = QIcon(":/icons/filenew.svg"); setMinimumSize(400,300); mRowHeight = 20; QIcon icon; icon.addPixmap(QPixmap(":/icons/qtOfs.png"), QIcon::Normal, QIcon::Off); setWindowIcon(icon); if(objectName().isEmpty()) setObjectName(QString::fromUtf8("this")); resize(400, 300); addActions(); addMenus(); setupStatusBar(); createToolbar(); retranslateUi(); createListWidget(); updateLoadTerminateActions(false); mApplicationObject = 0; readSettings(); mExtractorThread = new ExtractThread(); mAddFilesThread = new AddFilesThread(); mProgressTimer = new QTimer(this); mProgressTimer->setInterval(100); mProgressTimer->stop(); connect(mExtractorThread, SIGNAL(finished()), this, SLOT(extractFinished())); connect(mAddFilesThread, SIGNAL(finished()), this, SLOT(addFilesFinished())); connect(mProgressTimer, SIGNAL(timeout()), this, SLOT(updateProgress())); if(!mArgsFile.isEmpty()) { mHasFileArgs = true; openOfsFile(mArgsFile); } }
/** Setups user interface of options dialog. */ void OptionsDialog::setupUi() { if (this->objectName().isEmpty()) this->setObjectName(QString::fromUtf8("OptionsDialog")); this->setWindowTitle(tr("Sir - Configure Options")); this->setWindowModality(Qt::WindowModal); this->resize(680, 550); verticalLayout = new QVBoxLayout(this); verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); horizontalLayout = new QHBoxLayout(); horizontalLayout->setObjectName("horizontalLayout"); horizontalLayout->setSpacing(8); listWidget = createListWidget(); horizontalLayout->addWidget(listWidget); scrollArea = new QScrollArea(this); scrollArea->setObjectName(QString::fromUtf8("scrollArea")); scrollArea->setWidgetResizable(true); scrollAreaWidgetContents = new QWidget(); scrollAreaWidgetContents->setObjectName(QString::fromUtf8("scrollAreaWidgetContents")); scrollAreaWidgetContents->setGeometry(QRect(0, 0, 409, 332)); verticalLayout_2 = new QVBoxLayout(scrollAreaWidgetContents); verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); createGroupBoxes(); createGroupBoxManager(); setupGroupBoxesLayout(); const int currentListItem = 0; listWidget->setCurrentRow(currentListItem); groupBoxManager->setCurrentGroupBoxByIndex(currentListItem); scrollArea->setWidget(scrollAreaWidgetContents); horizontalLayout->addWidget(scrollArea); setupComboBoxesModels(); verticalLayout->addItem(horizontalLayout); buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, Qt::Horizontal, this); buttonBox->setObjectName("buttonBox"); buttonBox->button(QDialogButtonBox::Ok)->setText(tr("Ok")); buttonBox->button(QDialogButtonBox::Cancel)->setText(tr("Cancel")); verticalLayout->addWidget(buttonBox); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { createActions(); createMenus(); createToolBars(); createStatusBar(); createHelium3Widget(); createAntiHelium3Widget(); createHypertritonWidget(); createAntiHypertritonWidget(); createListWidget(); createOthersWidget(); createLayout(); this->setWindowTitle(tr("利用Navie组合模型来生成氦3、超氚核以及相应的反粒子")); }
void MainWidget::centralLayout() { //中央区左侧 QWidget* central_l = new QWidget; central_l->setLayout(new QVBoxLayout); central_l->layout()->setMargin(0); central_l->layout()->setSpacing(0); central_l->layout()->addWidget(createListWidget()); central_l->layout()->addWidget(createTreeWidget()); //中央区右侧 QWidget* central_r = new QWidget; central_r->setStyleSheet("QWidget{background-color:white;}"); central_r->setLayout(new QVBoxLayout); central_r->layout()->addWidget(createIconWidget()); this->m_central->addWidget(central_l); this->m_central->addWidget(central_r); QList<int> list; list<<200<<700; this->m_central->setSizes(list); }
void WidgetMain::initData() { //设置TreeWidget的font大小 { auto font = treeWidget->font(); font.setPixelSize(11); treeWidget->setFont(font); } pushButtonInfor->installEventFilter(this); pDustbin_ = new Label(this);//还可以用他的hover,通过eventfilter pDustbin_->hide(); pBackStart_ = new QLabel(this); pBackStart_->installEventFilter(this); QPixmap pix("./resource/images/bb/JumpToStart_idle.png"); pBackStart_->resize(pix.size()); pBackStart_->setPixmap(pix); { int y = widgetTitle->height()+widgetMenu->height()+10+255; pBackStart_->move(widgetLeft->width()+10, y); } //pBackStart_->setOpacity(0); pBackStart_->hide(); pSerialPortToolLabel_ = new FunctionAreaWidget(this); connect(pSerialPortToolLabel_, SIGNAL(signalClick()), this, SLOT(slotCreateSerialTool())); pSerialPortToolLabel_->addData(QPixmap("./resource/images/tool_area/TopToolBar_Serial.png"), "Serial"); pSerialPortToolLabel_->move(this->width()-200, 31); pSerialPortToolLabel_->show(); { QPixmap pix("./resource/images/tool_area/TopToolBar_del"); pDustbin_->resize(pix.size()); pDustbin_->setPixmap(pix); } labelLogo->installEventFilter(this); pDustbin_->installEventFilter(this); widgetLeft->installEventFilter(this); pAllBlockMenu_ = new QMenu(this); { // 啦拉拉在这里检测所有的模块 QString path = "./resource/Blocks"; QDir dir(path); dir.setFilter(QDir::AllDirs | QDir::NoDotAndDotDot); foreach (const QString &dirName, dir.entryList()) { //ListWidgetItem QString dirPath = path + "/" +dirName; QTreeWidgetItem *pTreeItem = new QTreeWidgetItem(treeWidget, QStringList(dirName)); pTreeItem->setSizeHint(0, QSize(100,20)); pTreeItem->setData(0,Qt::UserRole+1,dirPath); map_treeWidgetItemPointer_pageIndex_.insert(pTreeItem, pageIndex_++); //menu QMenu *pMenu = pAllBlockMenu_->addMenu(dirName); scanBlocks(dirPath, pTreeItem, pMenu); } { //treeWidget->setCurrentIndex(treeWidget->indexAt(QPoint(5, 5))); } } { QPixmap pixNormal("./resource/images/common/Blocks_Begin.png"); QPixmap pixHover("./resource/images/common/Blocks_Begin_p.png"); QPixmap pixPressed("./resource/images/common/Blocks_Begin_o.png"); pixNormal.scaled(QSize(26, 26)); pixHover.scaled(QSize(26, 26)); QListWidgetItem *pItem = new QListWidgetItem(""); pItem->setSizeHint(QSize(38, 38));//26*26 BlockMenuWidget *pWidget = new BlockMenuWidget(pixNormal, pixHover, pixPressed); listWidgetMenu->addItem(pItem); listWidgetMenu->setItemWidget(pItem, pWidget); } { QPixmap pixNormal("./resource/images/common/Blocks_All.png"); QPixmap pixHover("./resource/images/common/Blocks_All_p.png"); QPixmap pixPressed("./resource/images/common/Blocks_All_o.png"); pixNormal.scaled(QSize(26, 26)); pixHover.scaled(QSize(26, 26)); QListWidgetItem *pItem = new QListWidgetItem(""); pItem->setSizeHint(QSize(38, 38)); BlockMenuWidget *pWidget = new BlockMenuWidget(pixNormal, pixHover, pixPressed); listWidgetMenu->addItem(pItem); listWidgetMenu->setItemWidget(pItem, pWidget); } connect(listWidgetMenu, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), this, SLOT(slotCurrentItemChanged(QListWidgetItem*,QListWidgetItem*))); pEditScene_ = new EditScene(QRectF(0, 0, 840, 640), widgetShowScene); pEditScene_->setWidgetMain(this); pEditScene_->setComponentData(&hash_blockPath_blockData_); pEditScene_->addModuleTagData(map_moduleName_moduleTag_); widgetShowScene->setScenePointer(pEditScene_ ); // pEditScene_->setListWidgetModulePointer(listWidget); connect(pEditScene_, SIGNAL(signalViewOffset(QPoint)), this, SLOT(slotViewOffset(QPoint))); connect(pEditScene_, SIGNAL(signalShowSubWindows()), this, SLOT(slotShowSubWindows())); connect(pEditScene_, SIGNAL(signalFocusInLine(FlowLine*,QString,QString)), this, SLOT(slotFocusInLine(FlowLine*,QString,QString))); connect(pEditScene_, SIGNAL(signalFocusInGroup(QString)), this, SLOT(slotFocusInGroup(QString))); connect(this, SIGNAL(signalCreateGroup(QString)), pEditScene_, SLOT(slotCreateGroup(QString))); createListWidget(); pListWidget_ = static_cast<ListWidgetAdvanceBlock*>(stackedWidgetBlockType->currentWidget()); QTimer::singleShot(50, this, SLOT(slotOpenAutoUpdate())); }