pyvec / pyvec/naucse.python.cz

Zmínit něco o verzích PyQT v materiálech na pokročilý Python

Offen
#577 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

content MI-PYT
Vorherrschende Sprache
Keine Sprachdaten
Sterne
335
Forks
119
Ø Merge
3 Std. 6 Min.
Gemergte PRs (30 T.)
1

Beschreibung

Při replikaci postupu ze cvičení na PyQT jsem se setkal se zajímavým problémem: u všech tiles vykreslovaných metodou QSvgRenderer.render byla špatně pozice, všechny jako by byly posunuté na souřadnice x/2, y/2 (pokud jsem je chtěl vykreslit na souřadnicích x, y). Zejména to bylo vidět, když jsem zkombinoval dva kroky cvičení dohromady: nechal jsem starou mapu zobrazovanou pomocí QPainter.fillRect, a nad to jsem vykreslil SVG verzi. Správně by SVG grass tile měla kompletně překrýt všechny barvy, ale to se nestalo, vše vykreslované z SVG bylo posunuté směrem do levého horního rohu. Po nějakém debugování se mi podařilo přijít na to, že problém pocházel někde z nesedících verzí Qt a PyQT: na mém systému jsem měl Qt verze 5.13.2, ale PyQT na pypi bylo již ve verzi 5.14. V momentě, kdy jsem explicitně vynutil instalaci PyQt5==5.13.2, tak vše začalo fungovat, a se zbytkem cvičení již nebyl problém.

Bohužel se mi nepodařilo odhalit přesnou příčinu problému, s Qt nemám prakticky žádné zkušenosti, při debugování jsem dost tápal, a po odhalení problému s verzemi se mi již nechtělo tomu dávat víc času. Napadlo mě ale alespoň, že by do materiálů bylo vhodné přidat nějakou zmínku o potenciálních problémech plynoucích z nesedících verzí. Pokud se někomu v budoucnu při tomto cviku budou dít nějaké těžko vysvětlitelné problémy, alespoň je nějaká šance, že si tohle uvědomí dřív a nebude muset problém nijak dlouho hledat. :)

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Die in der Issue referenzierten fortgeschrittenen Python-PyQt-Übungsmaterialien lokalisieren und die Schritte zu QSvgRenderer.render überprüfen. Einen Hinweis auf mögliche Versionskonflikte zwischen Qt und PyQt hinzufügen, einschließlich des gemeldeten Workarounds PyQt5==5.13.2, und bestätigen, dass die Anleitung die Lernenden deutlich vor diesem Kompatibilitätsproblem warnt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.