创建工具栏
//创建工具栏 void MainWindow::createToolbars() { QMenu *togglemenu = new QMenu(this); // File toolbar 文件工具栏 QToolBar *filetools = new QToolBar(tr("File tools")); filetools->setObjectName("filetoolsbar"); togglemenu->addAction(filetools->toggleViewAction()); filetools->addAction(new_); filetools->addAction(open_); filetools->addAction(save_); filetools->addAction(saveas_); addToolBar(Qt::TopToolBarArea, filetools); // Drawing toolbar 绘画工具栏 QToolBar *drawtools = new QToolBar("Drawing tools"); drawtools->setObjectName("drawtoolsbar"); togglemenu->addAction(drawtools->toggleViewAction()); drawtools->addAction(brushtool_); drawtools->addAction(erasertool_); drawtools->addAction(pickertool_); drawtools->addSeparator(); drawtools->addAction(zoomin_); drawtools->addAction(zoomout_); drawtools->addAction(zoomorig_); drawtools->addSeparator(); // Create color button 创建颜色按钮 fgbgcolor_ = new widgets::DualColorButton(drawtools); // Create color changer dialog for foreground fgdialog_ = new dialogs::ColorDialog(tr("Foreground color"), this); connect(fgbgcolor_,SIGNAL(foregroundClicked()), fgdialog_, SLOT(show())); connect(fgbgcolor_,SIGNAL(foregroundChanged(QColor)), fgdialog_, SLOT(setColor(QColor))); connect(fgdialog_,SIGNAL(colorChanged(QColor)), fgbgcolor_, SLOT(setForeground(QColor))); // Create color changer dialog for background bgdialog_ = new dialogs::ColorDialog(tr("Background color"), this); connect(fgbgcolor_,SIGNAL(backgroundClicked()), bgdialog_, SLOT(show())); connect(fgbgcolor_,SIGNAL(backgroundChanged(QColor)), bgdialog_, SLOT(setColor(QColor))); connect(bgdialog_,SIGNAL(colorChanged(QColor)), fgbgcolor_, SLOT(setBackground(QColor))); drawtools->addWidget(fgbgcolor_); addToolBar(Qt::LeftToolBarArea, drawtools); toolbartoggles_->setMenu(togglemenu); }