Tkinter-Canvas-erstellen von Rechteck
In python, tkinter, bin ich versucht zu machen, ein Spiel, das umfasst das erstellen von Formen auf eine Leinwand. Zum Beispiel, ich möchte ein rotes Rechteck angezeigt über meine Leinwand Bild. Wenn ich ausführen meines Codes, das Rechteck, das Sie sehen, ist etwa 1 pixel in der Größe, und ich bin nicht sicher, warum und wie es so geworden. Hier ist mein code:
from tkinter import *
root = Tk()
root.geometry("500x900")
canvas = Canvas(root, width=550, height=820)
canvas.pack()
png = PhotoImage(file = r'example.png') # Just an example
canvas.create_image(0, 0, image = png, anchor = "nw")
a = canvas.create_rectangle(50, 0, 50, 0, fill='red')
canvas.move(a, 20, 20)
Hoffe, dass dies gelöst werden kann.
InformationsquelleAutor Jake | 2017-02-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
create_rectangle
Methode benötigt 4 Koordinaten:canvas.create_rectangle(x1, y1, x2, y2, **kwargs)
mit (x1,y1) die Koordinaten der linken oberen Ecke und (x2, y2) die der unteren, rechten Ecke. Aber du hast zweimal den gleichen Koordinaten, so dass das Rechteck hat eine null-Breite und Höhe, das ist, warum Sie sehen nur ein pixel. Versuchen Sie, mitcanvas.create_rectangle(50, 0, 100, 50, fill='red')
- und diese Zeit sollten Sie sich ein Quadrat mit einer Seitenlänge von 50 Pixeln.Können Sie mehr details über die Argumente der
create_rectangle
auf dieser website.InformationsquelleAutor j_4321