Seite 1 von 1

Elementposition im Canvas

Verfasst: Montag 5. Januar 2009, 20:31
von classic
Hallo,
ich habe folgendes Problem, dass ich die Position eines Elementes in einer Canvas auslesen möchte.
Also dass ich zum Beispiel prüfe, ob ich ein Element (Ellipse, Rechteck, o.a.) durch .move auf ein anderes Element geschoben habe oder ob ein Element über den Rand der Canvas verschoben wurde.

Boardsuche und Google schon benutzt aber nichts gefunden :cry:

MfG
classic

Re: Elementposition im Canvas

Verfasst: Montag 5. Januar 2009, 21:20
von numerix
classic hat geschrieben:Boardsuche und Google schon benutzt aber nichts gefunden
Das sollte helfen: http://infohost.nmt.edu/tcc/help/pubs/t ... thods.html

Verfasst: Montag 5. Januar 2009, 21:22
von wuf
Hallo classic

Hierfür kannst du die Canvas-Methode 'coords' verwenden:

Code: Alles auswählen

import Tkinter as tk

app_window = tk.Tk()

canvas = tk.Canvas(app_window, bg='steelblue3', highlightthickness=0,
    width=200, height=150)
canvas.pack()

canvas.create_rectangle(30, 30, 80, 80, fill='green', tag='rechteck')

print
x0, y0, x1, y1 = canvas.coords('rechteck')
print 'Meine Start-Position ist x0=%d, y0=%d, x1=%d, y1=%d:' % (x0, y0, x1, y1)

canvas.move('rechteck', 10, 10)

print
x0, y0, x1, y1 = canvas.coords('rechteck')
print 'Meine neue Position ist x0=%d, y0=%d, x1=%d, y1=%d:' % (x0, y0, x1, y1)
print

app_window.mainloop()
Gruss wuf :wink:

Verfasst: Montag 5. Januar 2009, 21:29
von classic
@numerix: Danke für den Link, doch ich denke die Methode von wuf ist nciht schlecht und da muss ich mich nciht durch sehr lange Texte durcharbeiten.

@wuf: Dankeschön sehr hilfreich, damit lässt sich mein problem lösen.

MfG
classic

Verfasst: Montag 5. Januar 2009, 22:19
von numerix
classic hat geschrieben:@numerix: Danke für den Link, doch ich denke die Methode von wuf ist nciht schlecht und da muss ich mich nciht durch sehr lange Texte durcharbeiten.
Der leichteste Weg zum Ziel ist nicht immer der (langfristig) beste.
Oder anders gesagt (wie ich es mal an der Tür eines Klassenraums gelesen habe): "Kein Lernen ohne Anstrengung." :wink: