最上位のルートウィンドウの下にTTKコンボボックスのドロップダウンショーアップ:Pythonの2.7 / Windowsの

StackOverflow https://stackoverflow.com/questions/4007325

  •  25-09-2019
  •  | 
  •  

質問

私は、Python 2.7での船の新しいTTKタイルの強化を試しています。

のWindows 7:ルートウィンドウが(「常に一番上に」)最上位のウィンドウとして設定されている場合は、以下のコードは、どのようにコンボボックスのドロップダウンショーアップ私たちのルートウィンドウの後ろを示しています。あなたが行「」コメントアウトした場合、「root.attributes( 『-topmost』を、1) 『』」その後、コンボボックスのドロップダウンメニューは、(予想通り)ルートウィンドウの中に表示されます。

誰も私たちは「最上位」ウィンドウでコンボボックスを使用することができますので、この動作の回避策がありますか?

# sample code that illustrates problem described above

import Tkinter as tkinter
import ttk

root = tkinter.Tk()

panelCombo = ttk.Frame( root )
panelCombo.pack( side='top', fill='x', padx=12, pady=8 )
valCombo = ( 'cat', 'dog', 'pig' )
varCombo = tkinter.StringVar()
varCombo.set( 'fish' )
cboCombo = ttk.Combobox( panelCombo, values=valCombo, textvariable=varCombo )
cboCombo.pack( side='left', anchor='w', padx=12, pady=8 )

# make our window 'alwaysontop'
root.attributes( '-topmost', 1 )
root.mainloop()
役に立ちましたか?

解決

それはTkツールキットで既知のバグのです。これはリリース8.5.6 の中で修正されました。たぶん、あなたはちょうどそのリリースは、Pythonにその方法を作るまで待つ必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top