Schnelle Frage - Ich arbeite an einer GUI in Pyqt, und es hat zwei Registerkarten. Momentan ist die zweite Registerkarte beim Start immer geöffnet, was ich denke, weil sie eine Funktion ausführt, um einen Dateinamen zu finden, der in einem QLineEdit gespeichert wird. Ich würde wirklich gerne den ersten Tab beim Start erscheinen. Wie würde ich das machen?PyQt - Erzwingen, dass eine Registerkarte zuerst angezeigt wird?
6
A
Antwort
9
Wenn Sie Ihre Benutzeroberfläche mit Qt Creator erstellen, wird die Registerkarte, die beim Speichern der Benutzeroberfläche aktiv war, als Standardregisterkarte festgelegt. Sie können dies korrigieren, indem Sie zurück in Qt Creator gehen, die Registerkarte auswählen, die Sie als Standard verwenden möchten, und sie erneut speichern und Ihre .ui
zu .py
Datei neu erstellen.
Alternativ können Sie QTabWidget
s setCurrentIndex(int)
verwenden.
Setzen Sie int
gleich dem Index der Registerkarte, die Sie anzeigen möchten.
Beispiel:
from PyQt4 import QtGui
from PyQt4 import QtCore
import sys
def main():
app = QtGui.QApplication(sys.argv)
tabs = QtGui.QTabWidget()
tab1 = QtGui.QWidget()
tab2 = QtGui.QWidget()
tab3 = QtGui.QWidget()
tabs.addTab(tab1,"Tab 1")
tabs.addTab(tab2,"Tab 2")
tabs.addTab(tab3,"Tab 3")
tabs.setWindowTitle('PyQt QTabWidget Add Tabs and Widgets Inside Tab')
tabs.show()
# This will set "Tab 2" to be shown when the application launches
tabs.setCurrentIndex(1)
sys.exit(app.exec_())
if __name__ == '__main__':
main()
Dies wird ein Fenster starten, die "Tab 2" aktiv ist.
Wenn unter der Leitung entfernt wird, dann "Tab 1" beim Start aktiv ist
tabs.setCurrentIndex(1)
Verwandte Themen
- 1. Erzwingen, dass der Django-Administrator auf Englisch angezeigt wird
- 2. Registerkarte wird nicht richtig angezeigt
- 3. Wie wird JavaScript eingefügt, wenn eine jQuery-Registerkarte angezeigt wird?
- 4. pyqt Popup-Fenster wird nicht korrekt angezeigt
- 5. Wie kann man verhindern, dass eine Seite allmählich angezeigt wird?
- 6. Warum wird das Kontrollkästchen nicht zuerst angezeigt?
- 7. Wie Registerkarte oben auf Registerkarten angezeigt wird
- 8. Erzwingen, dass ein IQueryable ausgeführt wird?
- 9. Was kann erzwingen, dass eine nichtflüchtige Variable aktualisiert wird?
- 10. Verhindern, dass "Notationspalette" angezeigt wird
- 11. So erzwingen Sie, dass eine Android-Kamera im Hochformat angezeigt wird, oder dass ich stattdessen die Drehung durchführe
- 12. So erzwingen Sie, dass der Berichts-Viewer im Druckvorschau-Modus angezeigt wird
- 13. ACF Repeater wird nicht zuerst in der Liste angezeigt
- 14. Suchen von Zeichenfolgen, je nachdem, was zuerst angezeigt wird
- 15. Canvas-Abmessungen bewirken, dass eine vertikale Bildlaufleiste angezeigt wird
- 16. Verhindern, dass Hintergrundprozess im Dock angezeigt wird
- 17. verhindern, dass die Seite angezeigt wird
- 18. Die Begrüßungsseite wird nicht angezeigt, die SelectDir-Seite wird zuerst angezeigt.
- 19. Verhindern, dass das Site-Verzeichnis angezeigt wird
- 20. Wie wird zuerst ein Navigationsmenü von einem anderen divs angezeigt?
- 21. Erzwingen Pivot-Element zu laden, bevor es angezeigt wird
- 22. Favicon wird nicht auf einer neuen Registerkarte angezeigt. Chrome-Erweiterung
- 23. Daten werden nicht in pyqt UI angezeigt
- 24. Wie wird sichergestellt, dass bestimmte JavaScript-Dateien zuerst geladen werden?
- 25. Wie erzwingen Sie, dass eine listPreference ihren Wert zurücksetzt?
- 26. Wie erzwingen Sie, dass eine .net-Anwendung auf einem bestimmten Monitor in einem Dual-Monitor-Setup angezeigt wird?
- 27. Erzwingen, dass ein Objekt unter ARC freigegeben wird
- 28. Wie wird angezeigt, dass beim Klicken auf die Schaltfläche eines anderen Dialogfelds ein Dialogfeld angezeigt wird?
- 29. Erzwingen, dass die Qt-GUI aktualisiert wird, bevor eine separate Funktion eingegeben wird
- 30. Erzwingen, dass eine iPhone App beendet wird, wenn die Home-Taste gedrückt wird (auf iOS4)
Danke, das regelte es! –