tkSimpleDialogにフルスクリーンウィンドウGUIをフォーカスさせることに問題があります。 GUIを使用して、ダイアログウィンドウを使用してroot.quit()を使用してGUIを閉じる(キオスクモードアプリのように)管理者パスワードとして使用しようとしています。この問題は、親ウィンドウがフルスクリーンの場合、ダイアログが親ウィンドウの前に来ないことです。さらに、私はtkSimpleDialogもフルスクリーンにしたいと思っています。ここでPython tkSimpleDialog全画面表示と全画面表示のフォーカス親
は、ダイアログボックスが呼び出されているか/私のプログラムでtkSimpleDialog.pyを使用して作成するコードです:
def check_admin_password():
# use askstring here to verify password.
pass_attempt = simpledialog.askstring("Verifying access","Please enter Admin password", parent=window, show="*")
if pass_attempt == "password":
root.quit() # used whatever your instance of Tk() is here in place of root.
admin_minimize_button = Button(window, text = "Administrator", command = check_admin_password, width=35, height=12)
admin_minimize_button.grid(row=4, column=0)
私は親ウィンドウの次のコードを使用していますが、私は何かがあると信じています私のダイアログウィンドウのフォーカスに影響を及ぼしているoverrideredirect(真)で:
qwindow = Toplevel(root) #renames Toplevel "popup" window frame to variable "qwindow"
qwindow.title('Mission Queue') #creates title on popup window
w, h = qwindow.winfo_screenwidth(), qwindow.winfo_screenheight() #aquires dimensions from display size
qwindow.geometry("%dx%d+0+0" % (w, h)) #sets window size to aquired dimensions
qwindow.overrideredirect(True) #removes top bar and exit button from parent window frame
私はtkSimpleDialog.pyファイルを編集して動作していないがoverrideredirect(真)の行を追加しようとしています。さらに情報が必要な場合は、私に知らせてください。アドバイスをいただければ幸いです。前もって感謝します。
だけcheck_admin_password' 'へお電話の前に、あなたは' root.update() 'を呼び出す場合はどうなりますか? –
残念ながら、それは何も変更されませんでした。私ができる最善のことは、ウィンドウを空の境界線でフルスクリーンにすることでしたが、まだ焦点を当てることは見られませんでした。この時点で、私は何をしようとしているのかを処理するためにエントリーラインを持つ新しいウィンドウを作成するだけでいいと思う。 –