[Playlisten] [Impressum und Datenschutzerklärung]

Erste Schritte mit PyQt5, Teil 7; Zeichenfunktionen, Paint-Ereignis


CC-BY-NC-SA 3.0

Tempo:

Anklickbares Transkript:

noch ein wichtiges Ereignis was nicht zu den üblichen zähltein Button wurde geklickt die Maus wurde bewegt es wurde Text eingegebenText verändert es wurde was selektiert ein Radiobutton hat sich der Zustand verändert es wurde eine Aktion ausgelöst und so weiter das wesentlicheEreignis was nicht zu den üblichen gehört Paintdas hat sich so eingebürgert über die Jahrzehntedass das Systemihrem Programm mitteiltwann etwas neu zu zeichnen ist mit einem Ereignisist vielleicht der Fluch der Historie aber so ist es haltklassische System zumindest das ein Weltereigniskriegen in WPFdes politischen vergleichen sie das ?? gehört hatten in Grammatik zweinormalerweise nicht mehr dann wird es sehr verborgenkann es machen wie man will aber normalerweise sieht man das nicht mehr in den aller System sind sie typischerweise Paint Ereignisse die Aufforderungneu zu zeichnendasVorführenimmer noch ein Dialogwitzim Anfang selbst Wasserzeichennicht die ganzen vorgefertigtenSachen zu nehmen sondern Leerzeichen weil selberein Dialogmit Buttonsweit zum Beispielvon Vorlagejetzt kümmere ich mich gar nicht ?? das Layoutinzwischen wie das gehtich hätte gern mal ein Schiebereglermit dem ich irgend eine Dateneingabesimulieren ?? Häuser ganz leiderund ich hätte gerne einWünscheBudget zu sehen budgetiertbittet ist die Mutterklassefür alle Widgetsgemacht gar nichts alle anderen Erben davonbittet ein solches macht gar nicht ?? ich wage mir das jetzt mal diese Switch wird um ganz frech das als Zeichenfläche zu verwenden in einer Systemen sowas wie kann wir'sauch unter HTMLhier borge ich mir das Widget das es mit den Schrägstrich das machen würdest anders machen würde normalerweiseableiteneine eigene Klasse ableiten von Widgetund da dann die entsprechenden Methoden überschreibenwesentliches Objekt und die Erde ist jedoch andersals dieses Widget das will ich jetzt frisieren sozusagen das soll meine eigene Zeichnung bringen und dazu muss es mit diesen bei der zuPentax kommt großes Widget dann sage ?? so geht das ich zeichne das jetztokay den speicher ich mal den Dialogunter?? ?? Fragezeichennatürlich Gasse professionell Programmierung auf das jeweilige Ding benennen Sie Dateien gewinnen sie variabel welche Klassen so vielleicht das hier sehr unprofessionell geradebitte das aber wirklich gut das leider hier heißt ?? besonders leider??ich will jetzt da was zeichnet in dem Fenster das heißt der Dialog das aufgehender Scanner schonein weiterer Dialog?? ganz fürchterlich D zweiein weiterer Dialog ?? not you Eichler den neuen Dialog hier der hießzeichnendreinatürlich irgendwo aufgehendas heißtBeistrich ich werde hier noch irgendwas vertratenimmer noch nicht nach Aktion neu das ?? gute Aktion neu vertrat sich damit Redaktionenneu klickesoll dieser neue Dialog aufgehennicht er sondern derExRebellen auch alsovon meinem Hauptfensterdie Sectionneuwenn die neue getriggert wirdsoll bittemach ich aber Zeichnung erscheintein Fenster mit der Zeichnung auf gema Dialoge der Zeichnung auf den ihr dieser die zwei Dialogalso kommt da Reinzeichnungöffnenviele LeerzeichenSchriftzeichenöffnen es soll dieser Dialog aufgehen also D zweiPunktwenn ich dasnicht oder mache einfach schonbleibt er neben anstehenKomma gucken ob das funktioniertder andere Dialog aufgehtPunktneu ist der Dialogund damit natürlich aktuell nichts gezeichnet Circa den Schieberegler bewegen Komma damit aktuell noch nichts gezeichnet da will ich es verzeichnetdamit sie sind das was passiert in Abhängigkeit von dem Schiebereglerdas außer ?? soll nicht die vorgefertigteElemente verwenden sondern selbst zeichnenda kommt jetztdas RAID Event reinjetzt will ich mit den Paint Ereignissen arbeitendieser Dialogauf den D zwei jetzt verweistder Bend Ereignisse zu verarbeiteninsbesondere soll mein Widget jetzt auf Paint Ereignisse reagierenund dass der Leser sich zu Fuß kann professionellwürde man ableitenich das Widget nehmen somit für das Widget abgeleitet haben das andere Zeichenmethodehat ich mach das jetzt so brutal das ich dem Patienten andere Zeichenmethodeunterschiebenbeißen können Sie das Operation am offenen Herzen sozusagen sie können Methodenvon Objekten in weißen nachträglich Austauschdas mache ich jetztdiese weiß Drumherum groß als Objekt und Programmierung zu veranstaltenerste Schritt wird aber sein das ich jetzt mit kriege was an Ereignissenankommt bei meinem Widgetalso wirklich mir guckenjetzt das Widget gehört zu dem D zwei Dialog und die Cyber verwickeltund jetzt kommt der Trick eben dass ich da was anders Unterschiedekönnen hier sagen Event waspassiert wenn Ereignisse auftretenund dem unterschiedliches was und kann so was hinschreibennachzwanzig Minuten googeln findet man das man sowas veranstalten kann nehme ich sie sagen besser teiltes ?? doch nur Funktion?? nicht gleich Händel Eventsdiese Funktion kriecht die Ereignisse vom bitte gleich reagiert rauf und wir müssen wissen welches bitte das wardas SD zweiwird wirddas jetzt bei ?? Programmierungin drin will ich jetzt nicht großartig was zu sagenBeistrich wahrscheinlich erklären was passiertich möchtedas was standardmäßig eingebauteSun Ereignisverarbeitungbei diesem wird ersetzt durch meine eigene Funktiondie Hendlevents hast was wir noch sie sehen hier gibt's Ärger häufig noch ein Wort natürlich wie sich das gehört ImportTimesals das unter ist das hier unten Times Message Timeas ich bastle ?? bitte drum stellt sie vor sie haben eine Maschinesteht und dass man nichts ab Werk das Widgetwas ich jetzt mache ich was Lesemaschine rum und zwar so das sie gleich das tut was ich will nämlich diese Funktionshendleventsaufrufenwenn Events auftreten der von zu Beistrich dass beidejetzt an der ?? verhängten Eventsda kommen jetzt mehrere Sachen an sich erst mal das was in anderen Sprachen ein Riss heißtein Verweis auf das Objekt selbsteine Referenz auf das Objekt dass es selbst und ich kriege das Ereignis was wenn Ereignis ist den eigentlich angekommenweicht ?? damit an das es einfach ausgeben?? zur Vergabe mal aus PrintEventwas kommt jetzt an Ereignissenbei dem Widget an unseren Sohn Hendleventssieben ?? in der Doku die soll sagen Ritter und co wenn sie die Ereignisse behandelt hat Punkt wenn die Ereignisse weitergeleitetund an das sie gebrauchen kann also alles was jetzt bei dem Widgets an Ereignissenankommtsollte ?? jetzt bei Handyevents auflaufenund einfach ausgegeben werden der Beginn wird gleich nur die Zeichenaus dem Bett Events raus und sorgen dafür dass es richtig gezeichnet wirdzweimalso ?? Position dass wir uns größer stellen Kommasehe sowas hier entweder ?? gewann weltweit ?? das gedachtdas der Dialogmussteich ferner mit der Maus von rechts in das Feld rein ist die Maussagt wir sehen sie und gab es ein intelligentwenn ich hier anfange auf dem Ding zu zeichnen sozusagen sind es schon Maus über das finnische Maus beziehungsweise aufräumenPunkt ihr Chef mein Fensternicht einfach mal Zeichen sind ganz viele ?? Mauseventsund so weiter und so weiter das ist wirklich die Ereignisse bei uns immer das Fenster zu?? Einheit Eventund ich mach das Fenster mal wieder auf den ?? kommt hoffentlich einDateienArkansas es istdas Baby wirddas passiert ??ganz mit ein Wahnsinnskommunikationsaufwandhinter die Kulissen sie gar nicht mit kriegen normalerweisejeder Krempel wird an Ereignissen gemeldet und typischerweisewird ?? nicht behandeltSuite sacht interessiert mich nichtWasser wolltmich interessiert es aber dieses Paint Event das System sagtAchtung Neuzeichnen du bist dran neu zeichnenmüssen schräger Einsatz von Events oder sich eben seit der Anfangszeitender grafischen Schnittstellenprogrammierungso durchgesetztdass das als Event ankommt oder basteln ?? jetzt zu ich fange die Bettevents ab und reagiere daraufich gucke jetzt alsoist das Event ein wenig Event gewesenist der Typ des Events kann ich das Event selbst vergleichenist der Typ des Eventsaus dem Kornder obentut Kommaals Costa Cordcorguck ich jetzt was habe ich den EventsEventEvents und zwar ohne weil sie man auch hierwas haben Sie denn alles an Events dass wir jetzt die Liste an Events die Namen habenverstehen offensichtlich so einigeziemlich abstruse Lockheed scheintdas Pentagonalso wenn vom System die Anforderung kommt neu zeichnendann lande ich jetzt in den Öfterendas System das Bett Event und Beistrich und jetzt kann ich in den ?? zeichnen?? typischerweise macht auch das es wieder in den meisten Systemen surft die Zeichenfunktionsind eingerahmtSie holen sich ein Objektdas die Zeichenfunktionalle beherrscht und zum Schlusssagen Sie das jetzt wirklich gebrauchen was die Zeichenfunktionbeherrschte sie das so aus ?? hinter MalerRessources Grafik contextIS ist ein hintersagen hole mir bitte den Petergu ie war einer von den umhertutUIda ist der Peter drinnengenehmigtzu ?? hinter den konstruierenein Jupiter konstruierenjetzt sage ich wir fangen an zu zeichnen?? kann das System zu diversen Vorbereitungen treffen Beginnich fange an zu Zeichens selbstist es bis in einer Sprachegerne mit diesem Objekt zu zeichnen ?? fertig sind seine PeterEntdass es ?? war dafüralles Bänke sindund sieholen mirein Instanz von Peteroder anderswo Grafik und Text dass es Klasse wären Objekte die Leerzeichen Funktion beherrschenoder sagen sie obendrein noch jetzt geht's los jetzt was auf das typische Berliner Gastspiel ?? Programmierungund ein tausend einen stellt insbesondere unter dem Namen Grafikkontextist der Grafikkontextaller Zeichenfunktionhat und es gewinnt einen ähm PaintPunktzum Beispielüber Troll einDruckortKomma sollte es was auch immer ich nehme Stoleindavon gibt's mehrere Richter den Übergang gesehen habenPunkt wemes gehört sie natürlich das je direkt Koordinaten angeben können von X gleich null Y gleich null bis X gleich hundert Y gleich drei hundert sogar sich das natürlichso zeichnen sie können die Farbe einstellen könnte ?? die keinen ständigen Text zeichnet Tipps Und-Zeichen Bögen Und-Zeichenwas auch immersie können guter Qualität und schlechter Qualität zeichnenall das kommt zwischen Beginn und Entes müsste da also eine Linie entstehen wann immer das System sagt Fragezeichenwenn wir aufgerufenUnd-Zeichen unsere Linie in das Widget rein aufunsere Liniedrücken das aus einer hässlich gezeichnete Linie dieser Zeitall das nur das überlegen Fragezeichen was soll der Unsinn so viel Aufwand um eine Linie zu zeichnenes muss immer alles zusammenauch das Anagramm haben mit den Menüsden Datei Öffnen Dialog und so weiter All das soll zusammen spielenmüssen sie mitspielenbei diesem Spiel das Wettereignis kriegen oder zwei Tageskriegenregierte drauf indem sie zeichnen was sie zu zeichnen habender nächste Schritt sollte die noch was tun ?? die Linie soll von demSchieberegler abhängen?? Schieberegler drauf gab der Seite hier über Schieberegler namensAußenhandels leiderder soll die Linie beeinflussendas Fondsmittel nicht so wie man sich das vorstelltich kann aber das was sich in dem Schreibenvon Dialog D zweigebe mir den Hobbysockelsleiderauch brisanteArbeiterund davon gebe mir dies leider persischenGesang auch Google müssen persischen Misses Value nein es ist eine russischewo steht das leideran welcher Stellemuss ich es einfacher Simpson Koordinate für den Endpunktjetzt sollte man ja meinenSchieberegler vorstelledann wird sich diese Linie ändern aber wenn sie das laufen lassen stellen Sie festdass das leider nicht der Fall istheutedas unsere Linie offensichtlich nicht Y bei null Punkt nebenbei ?? absondert ?? größerist die klassische Konventionbei diesem System zur benachbarten Größe anders als in der Mathematikjetzt hierden Schieberegler hin und her schiebe sehen Sie das war wohl Nixwarum war das Nix was ist hier falschalso es kommt dieses Bett Event nur einmal zu Beginn dann kann ich noch sowas hier den Seide hin und her schieben es kommt kein weiteres Bett wenn ich muss dafür sorgen dass wenn sich der Wertverlust leider ändert das dann eventuell ?? Punktwenn Sie Windows ordentlich Information programmiert Mac sie davon nichts passierte den Kulissen aber dermaßen über dieses Thema sondern selbst dafür sorgenwenn neu gezeichnet werden soll und das System weiß nicht das neu gezeichnet werden soll ups dann müsste Bescheid sagen muss also jetzt hier bei dem sich leider die Ereignisseberücksichtigenvon wegen der Wert des Leiters hat sich geändert?? noch also auf dem D zwei Dialoggibt es den ?? besondersleiderund der hat ein Sprechen sei gesunken ?? stecken hier was hat der für ein Ereignis sicher den Modus gehen richtet Seite nehmen und wegziehen sehen Sie welche ?? Trennstrich ?? schlechtdass der losgelassen und so weiterKleidermuff heißt ist der Maus bewegt worden gelten Scheinsteißder Welt hat sich geändert egal ob per Maus oder sonst wie ProgrammTrennstrich sichereMethodesich als das EreignisSchrägstrich besonders leiderPunktValuescheinstjetzt eine Funktion die eben aufgerufen wird wenn sich das leider verstellt hat dasscheint ständig die mal hierbist du mir mal irgendwer Namenskonventionausdenkendiese Funktion brauche ich und die soll er sagen?? bitte Neuzeichnender ?? sei dabei schenktTrennstrich ?? Beistrich ?? Challenge ausgemacht und der soll jetzt beim meinemBett wird alsoD zweiPunkt Widget Bescheid sagenlassen sich sagen Bescheid sagen lassen das jetzt was getan werden muss und das als updatedamit sagen sie nicht dem Widgets ?? eigentlich den System sagen Sie Bescheid Limited bräuchte jetzt mal bitte ein Pedalsystemwird sich dann überlegen an einem klugen Windel mehr oder minder klugen Zeitpunkt ein Ereignis zu schicken so sieht das dann aus das Widget müsste mal bitte abgeleitetwerden ?? des Hasses in Qualitätungültig machenerstes updateN tutdieses Widget müsste mal bitte neu gezeichnet werden System schickt dann irgendwannrelativ zügig ein Weltereignisdas Widget wann immer sich der Wert ändert Punkt Leidersagt es leider Bescheid?? was passiert und es müsse tatsächlichBewegungssensorfastconnect natürlich sehen sowieso richtig gemacht ?? Cycles connect ihr wieder durch Punkt connectsoeineneueSpannungwarso tut auch was sie kriegen sie Live tatsächlich was verbundenSie sehen das als Neuzeit relativ zügig erfolgt zumindest hier relativ zügig erfolgt ist Merkel jetzt nicht dessen spürbare Verzögerung gibt zwischen der Bewegung hier und dem Zeichnen aber im Programm ist das völlig es gibt ein Ereigniswenn sich das leider bewegt hat oder der Wert sich geändert hat Punkt leider und kurz danach gibt's den Befehl zum Neuzeichnenfür diese Liniemich für diese Linie für das Widget war Komma sich hier an und führen die Zeichen zuund ab da geht es ziemlich geradlinig weiter also wir haben Ereignisse fürs klicken für Mausbewegungenund schräger Weise zum Neuzeichnenund wenn sie jetzt Bildbearbeitungsprogrammschreiben oder wenn sie Kurven brauchen irgend ein Programm das Prognosen erstelltdenn wenn sie jetzt Winterbeginnhaben hundert Zeilen auf die Sparfunktionoder Methoden aufgerufen nicht Unterzeile zwischen geschriebenen Interent aber im Prinzip ist es das dann so funktioniert dasmeine Lösung hier ist bisschen gewagt ?? schon gesagt als dass ich es einfach hier eine Methode austauschedas ist schon eher schräg aber es funktioniertnormalerweisewird man eine neue Klasse ableitenund darin dann das Baby wird anders behandeln aber auf die Stelle von Z auch so ohne objektorientierte Programmierung