Извините, если это не в нужном месте.Мне просто нужна помощь.
При использовании обоих python 3.7.0 и 3.7.3 и всех необходимых библиотек для приложения root.overrideredirect (True) не перенаправляет ввод с клавиатуры наGUI приложение Tkinter и вместо этого идет в bash / shell / console.Этого раньше не было, поэтому я очень озадачен тем, как и почему это происходит сейчас.root.overrideredirect (True) необходим для полноэкранного режима.
Обратите внимание, что эта проблема возникает только в Linux (raspberry pi 3, последние обновления установлены. Текущие версии всех библиотек) и это окно не затрагивается.На Rasberry Pi 3 также имеется сенсорный экран.
Я попытался создать еще одно простое приложение для проверки того, что происходит, и то же самое происходит, когда overridedirect имеет значение true.Я не уверен, что попробовать в этой точке.Любая помощь будет оценена.
Фотография является примером того, что она делает.вместо того, чтобы идти к записи, она идет в shell / bash / console.https://drive.google.com/file/d/15qffmGzwqg6487k1pdteS26CfcYx0rV-/view?usp=sharing
import sys
try:
import Tkinter as tk
except ImportError:
import tkinter as tk
try:
import ttk
py3 = False
except ImportError:
import tkinter.ttk as ttk
py3 = True
def vp_start_gui():
'''Starting point when module is the main routine.'''
global val, w, root
root = tk.Tk()
root.overrideredirect(True)
top = Toplevel1 (root)
root.mainloop()
class Toplevel1:
def __init__(self, top=None):
'''This class configures and populates the toplevel window.
top is the toplevel containing window.'''
_bgcolor = '#d9d9d9' # X11 color: 'gray85'
_fgcolor = '#000000' # X11 color: 'black'
_compcolor = '#d9d9d9' # X11 color: 'gray85'
_ana1color = '#d9d9d9' # X11 color: 'gray85'
_ana2color = '#ececec' # Closest X11 color: 'gray92'
top.geometry("992x697+383+133")
top.title("New Toplevel")
top.configure(background="#d9d9d9")
self.Entry1 = tk.Entry(top)
self.Entry1.place(relx=0.091, rely=0.057,height=70, relwidth=0.306)
self.Entry1.configure(background="white")
self.Entry1.configure(disabledforeground="#a3a3a3")
self.Entry1.configure(font="TkFixedFont")
self.Entry1.configure(foreground="#000000")
self.Entry1.configure(insertbackground="black")
self.Entry1.configure(width=304)
self.Entry2 = tk.Entry(top)
self.Entry2.place(relx=0.101, rely=0.23,height=120, relwidth=0.286)
self.Entry2.configure(background="white")
self.Entry2.configure(disabledforeground="#a3a3a3")
self.Entry2.configure(font="TkFixedFont")
self.Entry2.configure(foreground="#000000")
self.Entry2.configure(insertbackground="black")
self.Entry2.configure(width=284)
if __name__ == '__main__':
vp_start_gui()
Нашел решение для полноэкранного режима.но я все же хотел бы найти решение для root.overridedirect (true). Использовать root.attributes ('- fullscreen', True) вместо root.overrideredirect (True) . Как связать Tkinter destroy () с ключом в Debian?
Также есть несколько связанных постов:
Переопределение Tkinter предотвращает определенные события в Mac и Linux
root.overrideredirect исвязывание
Возникла проблема с методом overrideredirect (True) в tkinter в Linux на основе Debian
Как связать Tkinter destroy () с ключом вDebian?