Wow. A non QML posting. How refreshing. Did you remember to add "/images/console.png" etc. to your resources file?
Also, QIcon is light weight, so you should use QIcon and not Pointer-To-QIcon for things like your consoleIcon_. Bill On 03/11/2013 04:55 AM, Sensei wrote: > Hi all, > > I am adding to a toolbar a new set of buttons, checkable and exclusive, > but I found a strange behavior. > > Using a QButtonGroup, buttons are added but NO ICON is showed, while > employing the very same icons in a QActionGroup, everything works just fine. > > I must add, the code using a QButtonGroup works *perfectly* on another > project, where I create a custom widget and add a new toolbar there > using a v-layout. > > Any hints? I am under OSX 10.8, Qt SDK 4.8.1. > > Thanks& Cheers! > > > // Setup toolbar actions on the QMainWindow > void hMainWindow::setupToolbar() > { > QAction *paction; > > // Init toolbar > toolbar_ = new QToolBar(tr("Tools"), this); > > // Basic toolbar options > toolbar_->setMovable(false); > toolbar_->setFloatable(false); > toolbar_->setIconSize(QSize(16, 16)); > toolbar_->setToolButtonStyle(Qt::ToolButtonIconOnly); > > // Add the toolbar > addToolBar(toolbar_); > > // Create view icons and texts > consoleIcon_ = new QIcon(":/images/console.png"); > consoleString_ = tr("Change view to console view."); > view3dIcon_ = new QIcon(":/images/view3d.png"); > view3dString_ = tr("Change view to 3D view."); > > // Add change view icon > toggleAction_ = new QAction(this); > toggleAction_->setIcon(*consoleIcon_); > toggleAction_->setCheckable(true); > toggleAction_->setStatusTip(consoleString_); > connect(toggleAction_, SIGNAL(toggled(bool)), this, > SLOT(changeView(bool))); > toolbar_->addAction(toggleAction_); > toolbarActions_.push_back(toggleAction_); > > toolbar_->addSeparator(); > > // Add an exclusive action group > QActionGroup *g = new QActionGroup(this); > g->setExclusive(true); > QAction* a1 = new QAction(QIcon(":/images/console.png"), "Hello", > this); > QAction* a2 = new QAction(QIcon(":/images/view3d.png"), "Hello", this); > QAction* a3 = new QAction(QIcon(":/images/console.png"), "Hello", > this); > QAction* a4 = new QAction(QIcon(":/images/view3d.png"), "Hello", this); > a1->setCheckable(true); > a2->setCheckable(true); > a3->setCheckable(true); > a4->setCheckable(true); > a1->setChecked(true); > g->addAction(a1); > g->addAction(a2); > g->addAction(a3); > g->addAction(a4); > toolbar_->addAction(a1); > toolbar_->addAction(a2); > toolbar_->addAction(a3); > toolbar_->addAction(a4); > > toolbar_->addSeparator(); > > QButtonGroup* buttons_ = new QButtonGroup(toolbar_); > buttons_->setExclusive(true); > QIcon* icnProject_ = new QIcon(":/icons/console.png"); > QIcon* icnSymbols_ = new QIcon(":/icons/view3d.png"); > QIcon* icnFind_ = new QIcon(":/icons/console.png"); > QIcon* icnProblems_ = new QIcon(":/icons/view3d.png"); > QIcon* icnLog_ = new QIcon(":/icons/console.png"); > QToolButton* navProject_ = new QToolButton(this); > QToolButton* navSymbols_ = new QToolButton(this); > QToolButton* navFind_ = new QToolButton(this); > QToolButton* navProblems_ = new QToolButton(this); > QToolButton* navLog_ = new QToolButton(this); > navProject_->setIcon(*icnProject_); > navSymbols_->setIcon(*icnSymbols_); > navFind_->setIcon(*icnFind_); > navProblems_->setIcon(*icnProblems_); > navLog_->setIcon(*icnLog_); > navProject_->setCheckable(true); > navSymbols_->setCheckable(true); > navFind_->setCheckable(true); > navProblems_->setCheckable(true); > navLog_->setCheckable(true); > navProject_->setChecked(true); > buttons_->addButton(navProject_, 0); > buttons_->addButton(navSymbols_, 1); > buttons_->addButton(navFind_, 2); > buttons_->addButton(navProblems_, 3); > buttons_->addButton(navLog_, 4); > toolbar_->addWidget(navProject_); > toolbar_->addWidget(navSymbols_); > toolbar_->addWidget(navFind_); > toolbar_->addWidget(navProblems_); > toolbar_->addWidget(navLog_); > } > _______________________________________________ > Interest mailing list > Interest@qt-project.org > http://lists.qt-project.org/mailman/listinfo/interest > _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest