メインウィンドウの背景を設定することができ、背景画像やウィジェットを押しつぶしている画像に合わせることを心配する必要はありません道の。フレームのサイズを変更せずにフレームの背景画像を設定して画像に合わせることはできません
しかし、私はそれは巨大な混乱となったフレームと同じことをしようとすると...
私は画像自体のサイズを変更するに関連するといくつかのことが、すべての縫い目を試してみましたが、私はしたくありません画像を歪める画像をフレームに入れて、画像に合わせてフレームのサイズを変更しないようにします。
フレームのサイズを変更せずにフレームの背景に画像を配置する方法はありますか?
編集:注:私が使用している画像は画面を満たすのに十分な大きさなので、ユーザーがサイズ変更を行っている場合、画像は余分なスペースをすべてカバーします。
だからこれは私がメインウィンドウに背景画像を追加する方法です:
bgImage=PhotoImage(file="./Colors/bgImage.png")
bgLable = Label(root,image = bgImage)
bgLable.image = bgImage
bgLable.grid(row=0,column=0,columnspan=3,rowspan=8)
しかし、私はそれは同様に、フレームのサイズを変更したフレームと同じことをしようとすると:
FrameTL = Frame(root, width = 100)
FrameTL.grid(row = 0, column = 0, rowspan = 20, columnspan = 1, sticky = W+N+S)
TLbg = Label(FrameTL,image = bgImage)
TLbg.image = bgImage
TLbg.grid(row=0,column=0)
私が試したことがいくつかありましたが、ウィンドウ/フレームに合わせて画像を歪ませ、画像を歪ませたくありません。
編集:
私はある種の問題を発見しました。フレームを使用する代わりに、サイドメニューに必要なウィジェット以外のすべてのウィジェットに対して.gridを使用しました。サイドメニューウィジェットはウインドウの左上に逸脱していなかったので、問題を解決するためにフレームを使用しようとしていました(現在は.placeを使用しています)。フレームは機能しますが、フレームを透明にする方法が見つからないため、ルートウィンドウから背景を保持できます。それで、私はフレームに背景画像を張り付けようとしたが、画像に合うようにフレームのサイズを変更していない。
メインウィンドウで背景画像(画面のサイズ)の最初のスニペットを実行すると、ウィンドウのサイズが変更されます。 – martineau
メインウィンドウには開始サイズが設定されており、プログラムを開いた後に調整することができます。 –