xturtle fenster

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
LP640
User
Beiträge: 142
Registriert: Dienstag 29. September 2009, 14:40

hallo

wenn ich das folgende programm laufen lasse:

Code: Alles auswählen

from xturtle import*
winsize(200,200,0,0)
hideturtle()
circle(100)
, dann öffnet sich zu beginn ganz kurz rechts unten auf dem bildschirm ein kleines fenster für den bruchteil einer sekunde, bevor dann das eigentliche fenster (200x200 pixel links oben) erscheint, wo der kreis gezeichnet wird.
gibt es da eine möglichkeit, das kurz auftauchende erste fensters zu vermeiden?

mfg
LP640
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

Welche Python Version und welche xturtle Version nutzt du ?
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Benutzeravatar
LP640
User
Beiträge: 142
Registriert: Dienstag 29. September 2009, 14:40

ich habe gerade eben bei xturtle.py nachgeschaut
da stand version 0.93 also ich hab sie noch von ungefähr 2006 :wink:
ich hab vor einiger zeit mal die neue version ausprobiert, aber dann hätte ich meine programme umschreiben müssen (wenn auch nur minimal)
würde die aktuelle version mein problem denn beheben und wenn ja: gibt es eine möglichkeit, dass ich die neue version dann nicht mit:

Code: Alles auswählen

from xturtle import* 
,sondern zum beispiel mit

Code: Alles auswählen

form xturtle2 import*
aufrufen könnte, um auch noch die alte version beizubehalten?

mfg
LP640
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Sinnvoll wäre, wenn du dich von xturtle ganz verabschieden würdest und stattdessen einfach das turtle-Modul mit Python >=2.6 einsetzt, denn das ist nichts anderes als das alte xturtle.
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

@numerix
wollte ich auch gerade ergänzen :D

@LP640
Wenn du aber auf die Version bestehst und das Fenster nicht die Größe gleich ändert, kann man dies auch schnell mit einem Tkinter.Canvas machen, in dem man das Turtlefenster dort intigriert.
Bei Canvas geht die Größenänderung problemlos.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Benutzeravatar
LP640
User
Beiträge: 142
Registriert: Dienstag 29. September 2009, 14:40

hi
also ich hab das gerade mal mit der aktuellsten xturtle version ausprobiert (hat auch als from xturtle2 import* funktioniert als ich die xturtle.py umbenannt habe) aber das probelm ist das selbe.
natürlich ist xturtle nicht die beste lösung, aber für mich momentan vollkommen ausreichend und simpel
das mit dem kurz aufblinkenden fenster wie beschrieben ist ja im eigentlichen sinne kein problem, sondern nur ein schönheitsfehler, den ich gerne beheben möchte.
nur wie?
ich würde mich freuen, wenn ihr mir auch hier wie schon oft weiterhelfen könntet.

mfg
LP640
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

Wie schon gesagt, du könntest das über Tkinter machen.

Aber ich kann dir keinen Code geben, du immer noch nichts über deine Pythonversion gesagt hast.
Sonst können wir alle hier nur raten.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Benutzeravatar
LP640
User
Beiträge: 142
Registriert: Dienstag 29. September 2009, 14:40

hi
meine pythonversion:
:Version: 0.3
:date: 2003-06-14

mfg
LP640
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Das ist sicher nicht deine Python-Version, das ist die Version von irgendwas.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

LP640 hat geschrieben:meine pythonversion:
:Version: 0.3
Das ist ja mal 'ne Hausnummer! Die älteste Python-Version, die ich bisher auftreiben konnte, war Python 0.9.1. :)
Benutzeravatar
LP640
User
Beiträge: 142
Registriert: Dienstag 29. September 2009, 14:40

hi
also ich weiß jetzt nicht ob das an der python version liegt,
aber wenn ihr das programm (hier noch einmal):

Code: Alles auswählen

from xturtle import*
winsize(200,200,0,0)
hideturtle()
circle(100)
ausfürt, erscheint dann bei euch auch ganz kurz ein fenster, bevor ein neues erzeugt wird, in dem der kereis gezeichnet wird???
wenn ja, dan liegt es doch offensichtlich nicht an meiner python version und wenn nein dann probiere ich es eben mal mit der aktuellen aus (ich hoffe nur, dass ich dann nicht alles wieder umschreiben muss) :roll:

(wegen meiner pythonversion ich hab 2.5 (hab mich vorhin vertan :wink: ))

mfg
LP640
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

Ich an deiner Stelle würde mir eher ein etwas anderen Stil zulegen,
denn xturtle ist extra Objekt Orientiert aufgebaut.

Wie wäre es mit etwas in der Art:

Code: Alles auswählen

import xturtle as turtle
import Tkinter as tkinter

root = tkinter.Tk()

cv = turtle.ScrolledCanvas(root, width=200, height=200)
cv.pack()

screen = turtle.TurtleScreen(cv)

t = turtle.RawTurtle(screen)
t.hideturtle()
t.circle(100)

root.mainloop()
Edit: @Py-Prog habe ich auch vergessen :oops:.
Zuletzt geändert von Xynon1 am Sonntag 28. November 2010, 20:40, insgesamt 2-mal geändert.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

@LP640 wie wäre es den wenn du einfach mainloop() an den Code anhängst?
Das liegt nicht an der Python/xturtle version, sondern einfach an dem fehlenden mainloop().
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

Xynon1 hat geschrieben:Edit: @Py-Prog habe ich auch vergessen :oops:.
Das passiert jeden bestimmt jeden hin und wieder. Aber wieso ist keinen von denjenigen die weit mehr beiträge haben als ich das nicht aufgefallen? (Sind die Unterfordert, oder denken die nicht an so einfache "fehler"?)
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

Unter umständen kennt sich kaum jemand mit turtle bzw xturtle aus,
ich meine SO toll ist es nun auch wieder nicht. :mrgreen:
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

Xynon1 hat geschrieben:Unter umständen kennt sich kaum jemand mit turtle bzw xturtle aus,
Was bringen dann die Beiträge? Wenn sich einer nicht auskennt dann soll er es doch denen überlassen die sich damit besser auskennen.
Xynon1 hat geschrieben:ich meine SO toll ist es nun auch wieder nicht. :mrgreen:
Kommt drauf an, z. B. fürs Lernen ist das nicht so blöd, weil man 'sehen' kann was das Programm macht.
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

Habe ich auch nicht Abgestritten, vorallem für Programmier Anfänger wirklich Praktisch,
aber erst seit xturtle.
Da bei dem Standard turtle (also vor Python 2.6), echt an OOP vorbei ging.
Jetzt kann man damit sehr gut an Programmierstruckturen heranführen.

Aber für Umsteiger von anderen Sprachen, eigentlich relativ unütz.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Py-Prog hat geschrieben:Was bringen dann die Beiträge? Wenn sich einer nicht auskennt dann soll er es doch denen überlassen die sich damit besser auskennen.
Jetzt trag mal nicht so dick auf. Das vergessene mainloop() fällt z.B. dann überhaupt nicht auf, wenn man mit IDLE arbeitet, weil dort schon eine mainloop läuft. Und mit (x)turtle kannst du sogar im interaktiven Modus arbeiten - da lässt du auch nicht explizit eine mainloop laufen und trotzdem bleibt das Fenster offfen.
Xynon1
User
Beiträge: 1267
Registriert: Mittwoch 15. September 2010, 14:22

numerix hat geschrieben:...,wenn man mit IDLE arbeitet,...
Also, unter Ubuntu 6.06, 8.04 und 10.4 merk ich die vergessenen Loops auch mit IDLE, da sonst nichts angeueigt wird.
Gilt aber nur für die Initialisierung, läuft erst mal eine Loop, die nicht durch das Stoppen des Programmes mit geschlossen wurde geht es auch ohne.

Ich fand das schon immer komisch, dennoch ist es bei mir so :K .
Deshalb starte ich Programme meinst vom Terminal aus.
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst.
Xynon auf GitHub
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

numerix hat geschrieben:Jetzt trag mal nicht so dick auf.
Ich hab damit nicht gesagt das ich der Bessere Programmierer bin. Ich verstehe nicht wieso du dich aufregest? Oder haben deine Beiträge geholfen das Problem zu lösen? Du hast schon öft genug geholfen, unteranderen auch mir, sollte ich da nicht auch mal helfen dürfen?
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
Antworten