Dankeschön fur die zahlreichen Antworten! Haben mich ganz schön weitergebracht!
Aber eine Frage hätt ich da noch:
Kann man aus einer Funktion heraus bei Buttondruck und aufrufen einer Unterfunktion die Übergeordnete schließen und wieder ausführen? Wie ein refresh??
Danke Euch allen!
MfG
Button Hintergrundfarbe
Falsch. Ich habe durchgängig ausschließlich die Begriffe "Variable" und "Funktion" verwendet, Begriffe die der OP bereits kennt. Ich habe es gerade vermieden, neue Begriffe einzuführen.deets hat geschrieben:Du fuehrst im Namen leichterer Verstaendlichkeit unbekannte, missverstaendliche und sogar ausgewiesen falsche Begriffe ein.
Allerdings. Wenn man OOP so auf lediglich einen Container reduziert, wie ich es getan habe, verliert das Thema seine Komplexität und man kann die einfachsten Grundlagen in einem Posting erklären, s.o..deets hat geschrieben:Und das soll dem OP das Verstaendnis eines so komplexen Gegenstandes wie der OOP *vereinfachen*?
Nein, dazu der weiterführende Link auf "A Byte of Python". Mir ging es nur um die allerersten Schritte, "Quickstart" sozusagen. Um einen Tkinter-Button zum Funktionieren zu bringen, könnten diese Schritte allerdings möglicherweise reichen.deets hat geschrieben:Masst du dir wirklich an zu glauben, deine Einlassung hier ist ausreichend, um das OO-Programmieren zu erlernen?
Sicher, wenn man OOP wirklich verstehen will, reicht es nicht. Es ging nur um ein erstes Beispiel.deets hat geschrieben:Die Lernleistung ist also einfach nochmal zu erbringen.
Es macht mir halt Spaß, anderen Hilfestellungen zu geben. Wenn Du deren Qualität nicht zu schätzen weißt, ist das Dein Problem; nicht meins und nicht das der Hilfesuchenden.deets hat geschrieben:Und damit stellt sich mal wieder die Frage, wieso du so beharrlich darauf bestehst, Anfaengern solche Baerendienste zu erweisen.
Du hast allerdings das Recht, mich darauf hinzuweisen, wenn ich sachliche Fehler machen sollte. Ich werde mich dann bemühen, diese in den folgenden Postings zu verbessern.
So funktionieren Foren und Diskussionen in einer freien Gesellschaft nunmal: Jeder darf sagen, was er denkt. Selbst, wenn es falsch sein sollte. Und andere dürfen sich eine Meinung dazu bilden, was sie davon halten. Das nennt man Meinungsäußerungsfreiheit. Dieses Prinzip scheint Dir fremd zu sein, das mußt Du noch lernen, unbedingt.
GUI-Anwendungen laufen anders ab als (fensterlose) Konsolenanwendungen. Wenn "rootwindow.mainloop()" aufgerufen wird, bleibt das Programm dort sozusagen "hängen" und wartet auf Benutzereingaben wie das Klicken eines Buttons. Erfolgt der Klick, wird die mit dem Button assoziierte Funktion aufgerufen. Danach kehrt das Programm in den Mainloop zurück.LIFE-CUBES hat geschrieben:Kann man aus einer Funktion heraus bei Buttondruck und aufrufen einer Unterfunktion die Übergeordnete schließen und wieder ausführen? Wie ein refresh??
Man braucht also keine Unterfunktionen oder so, um übergeordnete Funktionen zu beenden. Der Programmfluß ist immer so, wie gerade dargestellt: Mainloop -> Benutzereingabe -> Assoziierte Funktion -> Mainloop.
Bis das Root-Window (in einer der assoziierten Funktionen) mit "rootwindow.destroy()" geschlossen wird und die Anwendung beendet wird.
Zuletzt geändert von problembär am Samstag 18. Februar 2012, 23:20, insgesamt 3-mal geändert.
Hi LIFE-CUBES
Hier noch etwas zum experimentieren:
Gruß wuf
Hier noch etwas zum experimentieren:
Code: Alles auswählen
import Tkinter as tk
COLOR_LIST = ['yellow', 'green', 'blue', 'red']
class ColorListBox(tk.Toplevel):
def __init__(self, button):
tk.Toplevel.__init__(self, button)
self.button = button
self.list_box = tk.Listbox(self, bd=0, highlightthickness=0,
font=('Helvetica', 14))
self.list_box.insert(0, *COLOR_LIST)
self.list_box.pack()
self.list_box.bind('<ButtonRelease-1>', self.selected_color)
def selected_color(self, event):
index = self.list_box.curselection()[0]
color_name = self.list_box.get(index)
self.button.config(bg=color_name)
self.destroy()
def button_callback():
ColorListBox(button)
main = tk.Tk()
button = tk.Button(main, text='BgChange', command=button_callback)
button.pack()
main.mainloop()
Take it easy Mates!
Was fuer ein Unfug. Niemand verbietet dir hier, deine Einlassungen vorzunehmen. Die Diskussion ueber Meinungsfreiheit ist also voellig fehl am Platz, und ich habe da auch keinen Lernbedarf.problembär hat geschrieben:Es macht mir halt Spaß, anderen Hilfestellungen zu geben. Wenn Du deren Qualität nicht zu schätzen weißt, ist das Dein Problem; nicht meins und nicht das der Hilfesuchenden.deets hat geschrieben:Und damit stellt sich mal wieder die Frage, wieso du so beharrlich darauf bestehst, Anfaengern solche Baerendienste zu erweisen.
Du hast allerdings das Recht, mich darauf hinzuweisen, wenn ich sachliche Fehler machen sollte. Ich werde mich dann bemühen, diese in den folgenden Postings zu verbessern.
So funktionieren Foren und Diskussionen in einer freien Gesellschaft nunmal: Jeder darf sagen, was er denkt. Selbst, wenn es falsch sein sollte. Und andere dürfen sich eine Meinung dazu bilden, was sie davon halten. Das nennt man Meinungsäußerungsfreiheit. Dieses Prinzip scheint Dir fremd zu sein, das mußt Du noch lernen, unbedingt.
Wo du aber irrst - und zwar gewaltig - ist, dass es kein Problem ist, wenn du mit deinen "Hilfestellungen" Schaden anrichtest. Und einzig und alleine darum geht es hier, wenn ich und andere dich deine kruden Ansichten korrigieren. Natuerlich waere es schoen zu sehen, wenn du selbst irgendwann auf den Trichter kommst, dass du daraus lernst. Aber ich halte das fuer eher unwahrscheinlich.
Doch unbedarfter Anfaenger wegen, die dank deiner einen schlechten Start hinlegen wuerden sind der Grund, deine Ansichten hier nicht unkorrigiert zu lassen.
@problembär: Natürlich ist die Qualität Deiner Hilfestellungen ein Problem des Hilfesuchenden. Und ganz offensichtlich haben auch andere ein Problem damit.
Deine Argumentation zur Meinungsfreiheit ist lustig. Die scheint ja nur für Dich zu gelten. Denn wir dürfen uns anscheinend nur eine Meinung zur Qualität Deiner Beiträge *bilden*. Aber wehe wir *äussern* sie auch. Dann wirfst Du uns vor *wir* hätten Meinungsfreiheit nicht verstanden.
Zumal das sowieso nicht so funktioniert, wie Du Dir das zusammenfantasierst. Selbst wenn es richtig sein sollte, darfst Du hier nur sagen was die Moderatoren Dir durchgehen lassen. Das Grundgesetz verbietet weder das entfernen von Beiträgen in diesem Forum noch einen kompletten hinauswurf eines Mitglieds. Das muss man nicht einmal begründen.
Im Vergleich zu anderen Foren ist die Moderation in diesem Forum aber sogar sehr entspannt. Was ich persönlich gut finde! Artikel werden hier nur *sehr* selten inhaltlich verändert, zeitliche Sperren werden gar nicht verhängt, und Rauswürfe passieren eigentlich nur bei offensichtlich kommerziellen Spammern, die sonst nichts zum Thema Python beitragen.
Deine Argumentation zur Meinungsfreiheit ist lustig. Die scheint ja nur für Dich zu gelten. Denn wir dürfen uns anscheinend nur eine Meinung zur Qualität Deiner Beiträge *bilden*. Aber wehe wir *äussern* sie auch. Dann wirfst Du uns vor *wir* hätten Meinungsfreiheit nicht verstanden.
Zumal das sowieso nicht so funktioniert, wie Du Dir das zusammenfantasierst. Selbst wenn es richtig sein sollte, darfst Du hier nur sagen was die Moderatoren Dir durchgehen lassen. Das Grundgesetz verbietet weder das entfernen von Beiträgen in diesem Forum noch einen kompletten hinauswurf eines Mitglieds. Das muss man nicht einmal begründen.
Im Vergleich zu anderen Foren ist die Moderation in diesem Forum aber sogar sehr entspannt. Was ich persönlich gut finde! Artikel werden hier nur *sehr* selten inhaltlich verändert, zeitliche Sperren werden gar nicht verhängt, und Rauswürfe passieren eigentlich nur bei offensichtlich kommerziellen Spammern, die sonst nichts zum Thema Python beitragen.
Ob das, was ich sage, für einen Anfänger brauchbar ist, kann dieser selbst prüfen: Typischerweise poste ich Code-Beispiele. Die auch getestet sind, was bei euren ja nicht selbstverständlich ist.
Wenn diese Beispiele laufen, und das tun sie, weiß der Anfänger, daß der Python-Interpreter keine Einwände gegen meinen Code hat und er sieht auch, daß dieser das gewünschte Ergebnis erzielt. Dann kann der Code so schlecht nicht sein.
Jetzt kommt's aber ganz dicke:
Michael Weigend, Python GE-PACKT, 2. Auflage, Kapitel 15.2, S. 296, online hier:
Wenn diese Beispiele laufen, und das tun sie, weiß der Anfänger, daß der Python-Interpreter keine Einwände gegen meinen Code hat und er sieht auch, daß dieser das gewünschte Ergebnis erzielt. Dann kann der Code so schlecht nicht sein.
Jetzt kommt's aber ganz dicke:
Michael Weigend, Python GE-PACKT, 2. Auflage, Kapitel 15.2, S. 296, online hier:
Jetzt kann jeder sehen, daß eure Vorwürfe absurd und haltlos sind.Klassenattribute - gelegentlich auch Klassenvariablen genannt - sind Merkmale, die alle Objekte einer Klasse besitzen.
Du begreifst noch nicht mal selbst was du da liest, oder? Eine Klassenvariable wird von *ALLEN* Instanzen einer Klasse geteilt. Exakt so, wie mein Beispiel das vorfuehrt, und wie Herr Weigend das beschreibt.problembär hat geschrieben:Ob das, was ich sage, für einen Anfänger brauchbar ist, kann dieser selbst prüfen: Typischerweise poste ich Code-Beispiele. Die auch getestet sind, was bei euren ja nicht selbstverständlich ist.
Wenn diese Beispiele laufen, und das tun sie, weiß der Anfänger, daß der Python-Interpreter keine Einwände gegen meinen Code hat und er sieht auch, daß dieser das gewünschte Ergebnis erzielt. Dann kann der Code so schlecht nicht sein.
Jetzt kommt's aber ganz dicke:
Michael Weigend, Python GE-PACKT, 2. Auflage, Kapitel 15.2, S. 296, online hier:Jetzt kann jeder sehen, daß eure Vorwürfe absurd und haltlos sind.Klassenattribute - gelegentlich auch Klassenvariablen genannt - sind Merkmale, die alle Objekte einer Klasse besitzen.
Du hingegen hast den Begriff fuer Instanzvariablen benutzt. Also schlicht falsch.
Und deine alte "wenn's der Interpreter schluckt, dann ist es guter Code"-Argumentation hat noch nie gestimmt, und wird nie stimmen. Das aendert auch das bestaendige Wiederholen von diesem Unfug nicht.
@problembär: Oh, wir sehen vielmehr, dass Du nicht einmal verstanden hast, was deets kritisiert hat und was Weigend schreibt. Voller Stolz zeigst Du uns, dass man auch Klassenvariable sagen darf. Lustig, darum ging es nie. Es geht um das vorangestellte Wort Klasse, und mithin um den bedeutsamen Unterschied zwischen den Begriffen "Klassenattribut" und "Exemplarattribut", welche Du in Deinem Beitrag synonym verwendet hast, obwohl sie unterschiedliche Arten von Attributen bezeichnen. Was Dir aber offensichtlich nicht einmal bewusst ist...
Es überrascht dann auch nicht mehr, dass Du noch immer glaubst, Quelltext wäre gut, nur weil der Interpreter ihn akzeptiert. Ein Programm ist nicht automatisch gut oder auch nur richtig, weil es syntaktisch korrekt ist, ebenso wie ein Buch nicht automatisch gut und richtig ist, weil es grammatikalisch korrekt ist.
Es überrascht dann auch nicht mehr, dass Du noch immer glaubst, Quelltext wäre gut, nur weil der Interpreter ihn akzeptiert. Ein Programm ist nicht automatisch gut oder auch nur richtig, weil es syntaktisch korrekt ist, ebenso wie ein Buch nicht automatisch gut und richtig ist, weil es grammatikalisch korrekt ist.
So, und an diesem Punkt können wir möglicherweise sehen, wie Meinungsfreiheit funktioniert:
Also, ich wollte die Variablen in einer Klasse bezeichnen, also "self.classvalue" hier:
Ich habe diese Variablen "Klassenvariablen" genannt.
deets behauptet, sie müßten "Klassenattribute" heißen.
Ich verstehe Weigend so, daß er sagt, man könne beides dazu sagen.
Kann man das nun (beide Begriffe dafür verwenden) oder nicht?
Den Begriff von lunar, "Exemplarattribut", habe ich nie verwendet. Um echte Klassenvariablen wie in dem Beispiel von deets geht es auch nicht. Nur um die Klassenattribute und ob man sie auch möglicherweise untechnisch "Klassenvariablen" nennen kann.
Darüber kann man reden. Und dann kann man auch was davon lernen.
Aber, was man nicht sagen kann ist "Du hast keine Ahnung, hau' ab, schreib' hier nicht mehr, für Anfänger." Das habt ihr aber gemacht. Und das geht nicht.
Also, ich wollte die Variablen in einer Klasse bezeichnen, also "self.classvalue" hier:
Code: Alles auswählen
class MyClass(object):
def __init__(self):
self.classvalue = 1
deets behauptet, sie müßten "Klassenattribute" heißen.
Ich verstehe Weigend so, daß er sagt, man könne beides dazu sagen.
Kann man das nun (beide Begriffe dafür verwenden) oder nicht?
Den Begriff von lunar, "Exemplarattribut", habe ich nie verwendet. Um echte Klassenvariablen wie in dem Beispiel von deets geht es auch nicht. Nur um die Klassenattribute und ob man sie auch möglicherweise untechnisch "Klassenvariablen" nennen kann.
Darüber kann man reden. Und dann kann man auch was davon lernen.
Aber, was man nicht sagen kann ist "Du hast keine Ahnung, hau' ab, schreib' hier nicht mehr, für Anfänger." Das habt ihr aber gemacht. Und das geht nicht.
Zuletzt geändert von problembär am Sonntag 19. Februar 2012, 13:08, insgesamt 1-mal geändert.
Du begreifst es nicht. Das ist weder eine Klassenvariable, noch ein Klassenattribut. SONDERN EINE INSTANZVARIABLE ODER INSTANZATTRIBUT.problembär hat geschrieben:So, und an diesem Punkt können wir möglicherweise sehen, wie Meinungsfreiheit funktioniert:
Also, ich wollte die Variablen in einer Klasse bezeichnen, also "self.classvalue" hier:Ich habe diese Variablen "Klassenvariablen" genannt. deets meint, die müßten "Klassenattribute" heißen.Code: Alles auswählen
class MyClass(object): def __init__(self): self.classvalue = 1
Ich verstehe Weigend so, daß er sagt, man könne beides dazu sagen.
Kann man das nun (beide Begriffe dafür verwenden) oder nicht?
Jetzt begriffen? Und das ist auch keine Frage der "Meinungsfreiheit". Rot ist rot, nicht gruen.
Das ist meine MEINUNG, (und die von anderen hier, aber die sollen fuer sich selbst sprechen), und wie du ja so schoen dargelegt hast: Meine MEINUNG zu dir und deinen Programmierkuensten zu verkuenden ist mein gutes Recht - MEINUNGSFREIHEIT. Ist keine Einbahnstrasse, lieber problembaer.problembär hat geschrieben:
Darüber kann man reden. Und dann kann man auch was davon lernen.
Aber, was man nicht sagen kann ist "Du hast keine Ahnung, hau' ab, schreib' hier nicht mehr, für Anfänger." Das habt ihr aber gemacht. Und das geht nicht.
Und wie du gerade in diesem Thread eindrucksvoll unter Beweis stellst, sind dir selbst die Grundlagen nicht bekannt, die du dann aber anderen vermitteln moechtest?!? Und dabei soll dann was gutes rauskommen? Du bist wohl auch der Meinung, das Lehramt gehoere abgeschafft, und Unterricht sollte vom naechst besten Passanten auf der Strasse gegeben werden?
Merkbefreit sein muss schoen sein...
Ja genau, das ist das Wesen eines freien Internetforums oder etwa auch von Wikipedia.deets hat geschrieben:Du bist wohl auch der Meinung, das Lehramt gehoere abgeschafft, und Unterricht sollte vom naechst besten Passanten auf der Strasse gegeben werden?
Jeder darf da schreiben, auch wer nicht ausgebildet ist.
Wenn es falsch ist, was geschrieben wird, kommen die möglicherweise besser ausgebildeten und korrigieren es. Am Ende hat man dann ein gutes Ergebnis.
Nur blöd, wenn alle die Leute, die was schreiben wollen, gleich mit "du begreifst es nicht" beschimpft werden. Dann wird natürlich jedes Engagement erstickt.
Zuletzt geändert von problembär am Sonntag 19. Februar 2012, 13:14, insgesamt 1-mal geändert.
Schoen, wie du die Korrektur an deinem falschen Verstaendnis einfach mal so unter den Tisch fallen laesst...
Und was sind wir denn hier, wenn nicht besser ausgebildete Programmierer als du, die dich bestaendig korrigieren? Aber weder Wikipedia noch dieses Forum hier funktioniert dadurch, das jemand erstmal Quark erzaehlt, und andere muessen's dann ausloeffeln. Und du bist nunmal ein grosser Quarkproduzent.
Und was sind wir denn hier, wenn nicht besser ausgebildete Programmierer als du, die dich bestaendig korrigieren? Aber weder Wikipedia noch dieses Forum hier funktioniert dadurch, das jemand erstmal Quark erzaehlt, und andere muessen's dann ausloeffeln. Und du bist nunmal ein grosser Quarkproduzent.
Erstmal bestreite ich das. Und zum anderen wäre das, wenn es wahr wäre, wie gesagt für das Prinzip des Forums, richtig angewandt, nicht von Bedeutung.deets hat geschrieben:Und du bist nunmal ein grosser Quarkproduzent.
Nur durch Beschimpfungen unterminiert ihr dieses Prinzip. Und dann funktioniert das Forum insgesamt auch nicht mehr.
Gleiches gilt für OpenSource: Jeder darf da erstmal Quark in den Code schreiben. Nach eurer Auffassung könnte es weder OpenSource noch Linux überhaupt geben. Und also auch nicht Python.
Zuletzt geändert von problembär am Sonntag 19. Februar 2012, 13:19, insgesamt 2-mal geändert.
Du und jeder ander hat den schriftlichen Beweis dafuer, dass du Quark produzierst hier in diesem Thread vorliegen. Du hast IMMER NOCH NICHT verstanden, was der Unterschied zwischen einer Instanz- und einer Klassenvariable ist, masst dir aber an, anderen wertvolle Tipps genau dazu geben zu koennen.
Und zum wiederholten Male: Nein, so funktioniert auch dieses Forum hier nicht. Wenn es den Moderatoren zu bunt wird mit deiner "Hilfe", dann koennen und duerfen sie dich mundtot machen. Es ist IHR Forum. Ich will das persoenlich gar nicht so umgesetzt sehen - aber hier irrst du genauso, wie bei so ziemlich allem anderen auch.
Und zum wiederholten Male: Nein, so funktioniert auch dieses Forum hier nicht. Wenn es den Moderatoren zu bunt wird mit deiner "Hilfe", dann koennen und duerfen sie dich mundtot machen. Es ist IHR Forum. Ich will das persoenlich gar nicht so umgesetzt sehen - aber hier irrst du genauso, wie bei so ziemlich allem anderen auch.
Wird bestritten. Und nun? Kinderkram.deets hat geschrieben:aber hier irrst du genauso, wie bei so ziemlich allem anderen auch.
Und mal wieder: Klassenvariablen oder was auch immer, sind dem OP total egal und für das, was er machen will, ohne Bedeutung. Dauernd verzettelt ihr euch in Nebensächlichkeiten.
Und das ist dann auch noch ganz toll:
... "und weil es läuft und das gewünschte Ergebnis liefert", muß man noch ergänzen: Damit entzieht ihr so nebenbei die einzige objektive Möglichkeit zu überprüfen, was richtiger Code ist.lunar hat geschrieben:Es überrascht dann auch nicht mehr, dass Du noch immer glaubst, Quelltext wäre gut, nur weil der Interpreter ihn akzeptiert.
Und ihr eröffnet euch damit eine schöne Möglichkeit, auch Leute anzumachen, selbst wenn sie stets lauffähigen Code schreiben.
Wieso sollte lauffähiger Python-Code Quark sein und wieso der, der ihn schreibt, Quarkproduzent?
Dafür maßt ihr euch die Deutungshoheit an. Die habt ihr aber nicht.
@problembär: Versuch mal wie weit Du bei Wikipedia kommst, in dem Du Artikel anlegst nach der Devise „hauptsache er ist erst einmal da, inhaltliche Korrektheit kommt dann schon”. Da fliegst Du recht schnell raus. Bei Wikipedia kannst Du das immerhin versuchen, bei OpenSource kommst Du dagegen noch nicht einmal so weit. Versuch mal Quark in den Linux-Quelltext zu schreiben. Das kannst Du in Deinem privaten Kämmerlein tun, aber in offizielle Repositories wirst Du das nicht bekommen. Da findet nämlich im Gegensatz zum Forum oder bei Wikipedia in aller Regel eine Zugangskontrolle statt, die sicherstellt, dass eine gewisse Qualifikation vorhanden ist. Nicht nur das — man sollte auch den jeweiligen Style-Guides der Projekte folgen. Denn auch das sind in der Regel KO-Kriterien, selbst wenn eine Programmänderung syntaktisch korrekt ist *und* auch das tut was sie soll.
Du bestreitest das jeder Moderator die technischen Möglichkeiten hätte a) Deine Beiträge zu ändern oder zu löschen oder b) sogar Dein komplettes Benutzerkonto zu löschen? Oder bezweifelst Du dass die Moderation insgesamt so etwas in besonders ausufernden Fällen auch befürworten würde? Oder geht es Dir darum dass Du glaubst dann ein Gerichtsverfahren auf Grundlage von GG §5 führen zu können?
Du bestreitest das jeder Moderator die technischen Möglichkeiten hätte a) Deine Beiträge zu ändern oder zu löschen oder b) sogar Dein komplettes Benutzerkonto zu löschen? Oder bezweifelst Du dass die Moderation insgesamt so etwas in besonders ausufernden Fällen auch befürworten würde? Oder geht es Dir darum dass Du glaubst dann ein Gerichtsverfahren auf Grundlage von GG §5 führen zu können?
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Da gibt es viele Gründe dafür.problembaer hat geschrieben:Wieso sollte lauffähiger Python-Code Quark sein und wieso der, der ihn schreibt, Quarkproduzent
Als erstes muss ein Algorithmus robust sein, d.h. auch in Grenzfällen funktionieren oder sinnvolle Fehlerrückmeldungen geben.
Als nächstes spielt da die Komplexität eines Algorithmus eine zentrale Rolle. Unter der Bedingung, dass zwei Algorithmen korrekt funktionieren und das gegebene Problem lösen, so wählt man idR. denjenigen, der das bessere Laufzeitverhalten hat.
Als letztes fällt mir spontan dann noch die Verletzung von Sprach typischen Idiomen ein. Oftmals hängt das auch mit den ersten Punkten zusammen, aber es kann davon unabhängig auch ein Kriterium sein, welches einen Code-Schnipsel als "schlecht" definierbar macht.
Ich denke das Hauptproblem mit Deinen Hilfestellungen ist, dass Du selber nicht lernwillig bist oder Dich zumindest hier so präsentierst. Du stellst hier Kritik immer als Anfeindung dar, in Wirklichkeit kommt es zu "genervten" Äußerungen von Forenmitgliedern eher dadurch, dass Du zum x-ten Mal denselben schlechten Code postest, obwohl Du darauf schon x-Mal hingewiesen wurdest. Anstelle das einmal anzunehmen, das zu durchdenken und schließlich selber korrekt anzuwenden, versteifst Du Dich auf Sturheit und redest Dich mit Schlagworten wie "Meinungsfreiheut" heraus. Ich denke, wenn Du hier mal sichtbar Lernbereitschaft zeigtest - wie etwa auf deets Klarstellung zum Thema Klassen- vs. Instanzattribut einzugehen - dann würden die Postings an Dich auch an Schärfe verlieren und schließlich ein entspanntes Verhältnis wieder Einzug halten
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
assert encoding_kapiert
-
- User
- Beiträge: 14
- Registriert: Freitag 17. Februar 2012, 17:38
Okok! Ganz ruhig! Wollt ja nicht gleich dass ihr zu streiten beginnt!
Hab noch eine Frage: Kann man durch einen Button unter 'command' die Funktion schließen [main.destroy()] und eine Unterfunktion GLEICHZEITIG aufrufen??
Mfg
Hab noch eine Frage: Kann man durch einen Button unter 'command' die Funktion schließen [main.destroy()] und eine Unterfunktion GLEICHZEITIG aufrufen??
Mfg
@LIFE-CUBES
Fuer die Streitereien kannst du ja nix...
Code: Alles auswählen
def meine_funktion():
erste_funktion()
zweite_funktion()
-
- User
- Beiträge: 14
- Registriert: Freitag 17. Februar 2012, 17:38
So hätt ich das auch schon ausprobiert, aber ich kann keine unterfunktion in einer unter-unterfunktion schließen!
Werd das mal kurz demonstrieren:
Werd das mal kurz demonstrieren:
Code: Alles auswählen
from Tkinter import *
from sys import stdout, exit
def destroy():
button.destroy()
def unterfunktion():
button=Toplevel()
button = Button(button, text='Schließen!', command=destroy)
button.pack( )
button.mainloop( )
widget = Button(None, text='Unterfunktion', command=unterfunktion )
widget.pack( )
widget.mainloop( )