Seite 1 von 1

6 icons für ein QPushButton ?

Verfasst: 22. November 2006 18:47
von defenderLQ
Hallo

Ich habe dem button 3 icons im Stylesheet vergeben das ist nicht so wie
ich eigentlich haben will,
im Show/Hide modus zeigt es nur 3 icons .
also ich will im Show modus 3 weitere.
wie soll das ich das nur machen?

Code: Alles auswählen

**
 Toggles the Console pane on and off, changes toggle button text
*/
void MainWindow::showConsoleFrame(bool show)
{
	if (show) {
		ui.frmConsole->setVisible(true);
		ui.btnToggleConsole->setChecked(true);
		ui.btnToggleConsole->setToolTip("Hide Console");
	} else {
		ui.frmConsole->setVisible(false);
		ui.btnToggleConsole->setChecked(false);
		ui.btnToggleConsole->setToolTip("Show Console");
	}
}

Code: Alles auswählen

QPushButton
{
    border-image: url(:/images/console-small-up.png) 
}

QPushButton:hover {
    border-image: url(:/images/console-small-hover.png) 
 
}

QPushButton:pressed  {
    border-image: url(:/images/console-small-down.png) 
}
wie kann dem button noch 3 weitere icons vergeben wenn es auf "show" ist?

Verfasst: 29. November 2006 14:30
von dontinelli
In dem du im zweiten Codeteil, wo du die Icons zuweist, mit der Variable "show" (ggf. als public deklarieren) eine Überprüfung analog 1. Codeteil vornimmst:

Code: Alles auswählen

QPushButton 
{
if (show) { 
      border-image: url(:/images/console-small-up-show.png)
   } else { 
      border-image: url(:/images/console-small-up-hide.png)
   } 
 
} 

QPushButton:hover { 
 if (show) { 
      border-image: url(:/images/console-small-hover-show.png)
   } else { 
      border-image: url(:/images/console-small-hober-hide.png)
   } 
 
} 

QPushButton:pressed  { 
if (show) { 
      border-image: url(:/images/console-small-down-show.png)
   } else { 
      border-image: url(:/images/console-small-down-hide.png)
   } 

} 
Cheers
Don Tinelli

Verfasst: 30. November 2006 21:05
von defenderLQ
also ich habs in stylesheets übernommen ohne erfolg.

es werden nun keine icons mehr angezeigt.

ich habs in mein MainWindow.ui also in den sytlesheet bereich reingepackt.

Code: Alles auswählen

QPushButton
{
if (show) {
      border-image: url(:/images/console-small-up.png)
   } else {
      border-image: url(:/images/console-big-up.png)
   }
 
}

QPushButton:hover {
 if (show) {
      border-image: url(:/images/console-small-hover.png)
   } else {
      border-image: url(:/images/console-big-hover.png)
   }
 
}

QPushButton:pressed  {
if (show) {
      border-image: url(:/images/console-small-down.png)
   } else {
      border-image: url(:/images/console-big-down.png)
   }

}