2016-07-31 7 views
1

私は、最初の大きなプログラミングプロジェクトとしてSimpsonsのトリビアゲームを書いています。私の質問は2つあります:tkinterのウィンドウと背景の画像が正しく整列しない

  1. これは、背景イメージを作成する正しい方法ですか?私の計画は、バックグラウンドでプレーしているシンプソンズのテーマソングと、バックグラウンドイメージの上にある1つまたは2つのボタンを含めることです。
  2. 私が達成したいことが与えられた場合、以下のコードが正しいアプローチであると仮定すると、なぜイメージとウィンドウの左側に薄い灰色の線が表示されますか?つまりなぜ、画像が右のように完全にウィンドウを埋めるのではないのですか?

ここでは私のコードです:

from tkinter import * 
from tkinter import ttk 
from PIL import Image, ImageTk 

root = Tk() 
root.title("The Simpsons Trivia Game") 
root.geometry('400x600') 
root.resizable(0,0) 

def resize_image(event): 
new_width = event.width 
new_height = event.height 
image = copy_of_image.resize((new_width, new_height)) 
photo = ImageTk.PhotoImage(image) 
label.config(image = photo) 
label.image = photo 

image = Image.open('E:\Simpsons Trivia Game\SimpsonsPic.png') 
copy_of_image = image.copy() 
photo = ImageTk.PhotoImage(image) 
label = ttk.Label(root, image = photo) 
label.bind('<Configure>', resize_image) 
label.pack(fill=BOTH, expand = YES) 

root.mainloop() 

tkinter window with background image (left side of window not perfectly alligned with background image

答えて

0

私はすべてを理解していないが、私は実行して(少なくとも、Linuxの場合)の境界線を取り除くために管理しました:

from tkinter import * 
from tkinter import ttk 
from PIL import Image, ImageTk 

root = Tk() 
root.title("The Simpsons Trivia Game") 
root.geometry("400x600") 
root.resizable(0,0) 

image = Image.open('/tmp/foobar.png') 
photo = ImageTk.PhotoImage(image) 
label = ttk.Label(root, image = photo) 
label.pack() 
label.place(relx=0.5, rely=0.5, anchor="center") 

root.mainloop() 
関連する問題