Wpis z mikrobloga

Mam pewien problem i nie rozumiem dlaczego to tak działa a nie inaczej.
Robię sobie tutorial https://www.pythonguis.com/tutorials/pyqt6-signals-slots-events/

Dochodzę do tego momentu QPushButton Signals, przepisałem kod i nie działa, wyświetla mi taki błąd

Traceback (most recent call last):
File "C:\Users\xxx\Desktop\Extractbooks\PyQttest.py", line 22, in
window = MainWindow()
File "C:\Users\xxx\Desktop\Extractbooks\PyQttest.py", line 12, in init
button.clicked.connect(self.thebuttonwasclicked())
TypeError: argument 1 has unexpected type 'NoneType'

Ta metoda (chyba tak to się nazywa) connect podświetla mi się na zółto i wykakuje błąd Cannot find reference 'connect' in 'function | function' co nic mi nie mówi. Ale poszukałem w necie, znalazłem rozwiązanie żeby zamienić ten kod z

button.clicked.connect(self.the
buttonwasclicked())
na
button.clicked.connect(lambda: self.thebuttonwas_clicked())

No i fajnie działa, ale trochę nie rozumiem czemu i mam wrażenie że to na pewien sposób druciarstwo. Czy to jakiś bug czy coś się zmieniło i tutorial jest nieaktualny? Czy to może problem u mnie?
#programowanie #python #pyqt #naukaprogramowania
  • 2
via Wykop Mobilny (Android)
  • 0
@alteron:
Usuń nawiasy. Masz podać tam funkcję,a nie ją wywołać. Twoje thebuttonwasclicked nie zwraca nic = zwraca None, więc ostatecznie jest button.clicked.connect(None) = wyjątek