Jomali_3945 | 2020-05-07 14:43:37 UTC | #1
While running your example, I get the error: AttributeError: 'MainWindow' object has no attribute 'onWindowTitleChange'
https://www.pythonguis.com/courses/start/signals-slots-events/
Wu_Yi | 2020-05-07 14:45:26 UTC | #2
I had the same problem, it seems that this signal is no longer available in the Qt QMainWindow class.
martin | 2020-05-10 09:41:25 UTC | #3
The onWindowTitleChange is a custom-defined slot (see the bottom of the example file) which you need to add yourself. The signal windowTitleChange is connected to this.
PyQt/PySide 1:1 Coaching with Martin Fitzpatrick — Save yourself time and frustration. Get one on one help with your Python GUI projects. Working together with you I'll identify issues and suggest fixes, from bugs and usability to architecture and maintainability.
# SLOT: This accepts a string, e.g. the window title, and prints it
def onWindowTitleChange(self, s):
print(s)
Wu_Yi | 2020-05-10 09:41:24 UTC | #4
Thanks, that makes sense.
Create GUI Applications with Python & Qt5 by Martin Fitzpatrick — (PyQt5 Edition) The hands-on guide to making apps with Python — Over 15,000 copies sold!
tashasummers5448 | 2020-07-21 20:49:05 UTC | #5
I got the same error but my mistake was that I had copy/pasted the slots into the same indent level as the class MainWindow
instead of the indent level of the def __init__
. It worked once I moved them over.