установить данные в качестве фона tkinter? - PullRequest
0 голосов
/ 20 сентября 2011

так что я нашел этот код:

import Image,ImageDraw
import cStringIO
from random import randint as rint

def randgradient():
    img = Image.new("RGB", (300,300), "#FFFFFF")
    draw = ImageDraw.Draw(img)

    r,g,b = rint(0,255), rint(0,255), rint(0,255)
    dr = (rint(0,255) - r)/300.
    dg = (rint(0,255) - g)/300.
    db = (rint(0,255) - b)/300.
    for i in range(300):
        r,g,b = r+dr, g+dg, b+db
        draw.line((i,0,i,300), fill=(int(r),int(g),int(b)))

    f = cStringIO.StringIO()
    img.save(f, "PNG")

    print "Content-type: image/png\n"
    f.seek(0)
    print f.read()

if __name__ == "__main__":
    randgradient()

этот код имеет изображение в памяти, и я пытаюсь сделать его фоном tkinter с возможно этим битом кода:

from Tkinter import *
Admin=Tk()
image1 = PhotoImage(file="f.png")
w = image1.width()
h = image1.height()
Admin.geometry("%dx%d+0+0" % (w, h))
panel1 = Label(Admin, image=image1)
panel1.pack()
Admin.mainloop

неважно, как я это делаю, но путь чуть выше не работает, так как бы я поступил?

1 Ответ

0 голосов
/ 21 сентября 2011

Вы можете преобразовать изображение в изображение Tk, используя модуль PIL ImageTk .См. PhotoImage примеры классов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...