QInputDialog Methoden überschreiben

Verschiedenes zu Qt
Antworten
okliw993
Beiträge: 4
Registriert: 29. Mai 2019 13:56

QInputDialog Methoden überschreiben

Beitrag von okliw993 » 31. Mai 2019 10:29

Hallo zusammen,

ich bin neu hier und beschäftige mich seit ein paar Wochen mit Python3 und PyQt5. Um eine Tastatureingabe zu realisieren, nutze ich QInputDialog. Nun zu meiner Frage: Ist es möglich, dass man die Methoden der Buttons (OK, Cancel), welche im QInputDialog - Fenster automatisch erzeugt werden, überschreiben kann?
Über ein paar nützliche Hinweise oder Befehle würde ich mich sehr freuen!

Gruß, okliw993

rudi25
Beiträge: 8
Registriert: 11. Juli 2018 12:50

Re: QInputDialog Methoden überschreiben

Beitrag von rudi25 » 31. Mai 2019 15:07

Hallo,
du kannst alles machen was du willst, löschen, umbenennen, neue Funkionen definieren usw. usw.
Weitere Infos zu PyQt5 siehe https://www.youtube.com/results?search_ ... 5%2C+teil4

okliw993
Beiträge: 4
Registriert: 29. Mai 2019 13:56

Re: QInputDialog Methoden überschreiben

Beitrag von okliw993 » 3. Juni 2019 10:27

Hallo,
Zuerst danke für den Link. Ich habe mir die Videos angeschaut und konnte einiges in meinem Code verbessern. Dennoch weis ich immer noch nicht so richtig wie ich das Fenster/ die Standartbuttons ansprechen/ überschreiben kann.
Ich öffne das Fenster mit:

x, result = QInputDialog.getText(self, 'Fenstername', 'Fenstertext')

Bei von mir designten Fenstern ist das kein Problem. Aber dieses ist ja Bereits vordefiniert..
Vielleicht hast du dazu ja noch eine Idee?

Gruß, okliw993

rudi25
Beiträge: 8
Registriert: 11. Juli 2018 12:50

Re: QInputDialog Methoden überschreiben

Beitrag von rudi25 » 3. Juni 2019 15:33

Hallo,
ohne zu sehen was Du gemacht hast, kann man nichts sagen.
In QT erfolgt normalerweise die Kommunikation zwischen den Objekten (Widgets) mittels SIGNAL und SLOT.
Am besten suchst du im Internet nach PyQt5 Signal + Slot oder du wendest dich an das Forum https://www.python-forum.de/viewforum.php?f=24

Du fängst jetzt mit Python3 und PyQt5 an. Das sind zwei Computersprachen und eine mächtige C++ Bibliothek (QT).
Das ist sehr viel Arbeit.

okliw993
Beiträge: 4
Registriert: 29. Mai 2019 13:56

Re: QInputDialog Methoden überschreiben

Beitrag von okliw993 » 4. Juni 2019 09:48

Ich habe es jetzt hinbekommen den Cancel-Button anzusprechen. Und zwar lasse ich in einer while-Schleife die Variable i bis 1000000 laufen. Sobald Cancel gedrückt wird, wird i auf 1000001 gesetzt und die while-Schleife unterbricht. Das ganze habe ich wie folgt gemacht:

Code: Alles auswählen

...
	while i < 1000000:
		Nr, result = QInputDialog.getText(self, 'Fenstername', 'Fenstertext')
		.....
		if not result:
			i = 1000001
Danke für deine Hilfe. Im Rahmen meines Projektes muss ich mich leider dieser (großen) Aufgabe stellen.

Mfg, okliw993

Antworten