[gelöst] Focus auf TabWidget

Alles rund um die Programmierung mit Qt
Antworten
SaLu
Beiträge: 50
Registriert: 18. August 2008 18:06

[gelöst] Focus auf TabWidget

Beitrag von SaLu »

Guten Morgen

habe ein kleines Problem und zwar hab ich folgendes Problem. Ich habe eine oberfläche voller tabs. 1 tab soll das haupttab sein das meistens angezeigt wird. Sobald das programm aufgerufen wird bekommt dieser Tab->setFocus. Dies funktioniert soweit. Jedoch will ich auch das bei bestimmten signalen dies auch gemacht wird. Zum einen soll er setfocus bekommen sobald ein timer abgelaufen ist und das andere Mal wenn ein Button gedrückt wurde.(das mit Button hat noch einen anderen Zweck)
So hier mein Quelltext

Code: Alles auswählen

	QTimer *qtime=new QTimer(this);
	qtime->start(5000);
QObject::connect(qtime, SIGNAL(timeout()),ui.tabWidget_2, SLOT(show()));

QObject::connect(ui.pushButton_2, SIGNAL(clicked()),this, SLOT(okaybutton()));
...
void tabs::okaybutton()
{
  ui.tabWidget_2->setFocus();
  ui.tabWidget_2->setWindowFlags(Qt::WindowStaysOnTopHint);
  ui.tabWidget_2->setWindowState(this->windowState() | Qt::WindowActive);
  ui.tabWidget_2->show();
  QApplication::setActiveWindow(ui.tabWidget_2);
  ui.tabWidget_2->activateWindow();
  ui.tabWidget_2->setWindowState(Qt::WindowActive);
  ui.tabWidget_2->raise();
}
die frage ist ob es ein repaint() oder etwas in der Art braucht das er es macht den so funktioniert es leider noch nicht :(
Wie gesagt denke es dreht sich nur um einen Befehl :( Bisher noch nichts passendes gefunden. Die Aufrufe in der Methode habe ich alle schon versucht und das auch schon im dem connect :(
Vielen Dank schonmal!
Zuletzt geändert von SaLu am 29. August 2008 13:21, insgesamt 1-mal geändert.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

setFocus()? Du meinst QTabWidget::setCurrentIndex(...) oder?
SaLu
Beiträge: 50
Registriert: 18. August 2008 18:06

Beitrag von SaLu »

ah perfekt und ich probier wieder alles aus und zerbrich mir den Kopf dabei ist es einfach ein ganz anderer Befehl :(
Antworten