N.....e
N.....e
https://pastebin.com/3PebARtL

#python #pyqt5

Potrzebuje zmienić zawartość widgetu label po zmienieniu wartości comboboxa. Napisałem funkcje, działa ona (na konsoli pojawia się combobox changed) ale program wiesza się przy wykonywaniu settext. Jakieś pomysły?
  • Najlepsze
  • Wszystkie komentarze
HefiDL
@NewEpisode: self.label.setText(f"Wybrana została wartość: {value}")

Ta linijka i działa jak złoto. Podałeś za dużo argumentów do metody setText.

Polecam w PyQt5 debugowanie w modzie "stań mi na jakimkolwiek błędzie"

W PyCharm jak klikniesz prawym na brakepoint i more:
N.....e
N.....e
@HefiDL: żuczkiem, ja normalnie odpalałem :D sprawdzę jutro, na dzisiaj juz dosyć ( ͡° ͜ʖ ͡°)
HefiDL
@NewEpisode: Zjadłeś self w label ?
Traceback (most recent call last):
File "D:/Projects/PythonInterview/fileone.py", line 46, in comboboxchanged
self.label.setText("MainWindow", "Wybrana została wartość: ", value)
TypeError: setText(self, str): too many arguments
N.....e
N.....e
@HefiDL: Co do pierwszej odpowiedzi - czy z self czy bez program się wysypywał, uczę się pyqt5 dopiero więc mało co ogarniam :D

@HefiDL: Co do drugiej odpowiedzi - rzeczywiście działa. Ciężko z tym pyqt5, bo często wyrzuci błąd Process finished with exit code -1234567890itd i zastanawiaj się o co chodzi - chociaż z tego co czytałem na SO to zazwyczaj przepełnienie pamięci. Mógłbyś wytłumaczyć o tym debugowaniu?
HefiDL
@NewEpisode: Hmmm to nie wiem, czemu nie działa. Ja zrobiłem tak, że dałem break point gdziekolwiek i ustawiłem to stawanie na błędzie, wyłączając stawanie na linii. Odpalam program "żuczkiem" w tryb debugowania i przeklikałem tą rozwijaną listę. Program stanął z komunikatem, który wkleiłem właśnie na tej linii.
HefiDL
@NewEpisode: jbc to pisz, zawsze można się zdzwonić na discordzie czy teamsach.
N.....e
N.....e
@HefiDL: dlaczego właściwie pyqt5 wyrzuca błędy na konsole tylko przez debuger a nie normalnie? Potestowalem, działa
HefiDL
@NewEpisode: Szczerze nie wiem, ale prawdopodobnie chodzi o stabilność gui i pewnie pod spodem jest milion try except.