Я понял, что overrideredirect помогает удалить декорации окна по умолчанию, как панель инструментов. Каковы другие ее возможности? Я не очень уверен и не могу найти много документации.
Я работаю над Mac. Использование tkinter Я хочу получить окно, которое остается maxsize и не может быть изменено, что я достиг с использованием геометрии и resizable. Теперь мне нужна гарантия того, что никакие случайные нажатия клавиш моего пользователя не смогут закрыть окно. Будет ли чрезмерная помощь помогать мне в этом? Есть ли альтернатива?Что делает overrideredirect?
ответ
Вы можете использовать overrideredirect()
и установить его флаг на True
. Это отключит ваше окно, которое будет закрыто обычным способом, как указано в приведенной выше ссылке. По штатными средствами, это означает кнопку X и Alt + F4 нажатия клавиши комбинации.
Поскольку вы использовали geometry()
и resizable()
, вам нужно будет позвонить update_idletasks()
т о силе дисплей, который будет обновлен до применения следующей вхолостую.
Вот пример:
import Tkinter as Tk
root = Tk.Tk()
root.geometry('200x200+100+100')
root.resizable(False, False)
root.update_idletasks()
root.overrideredirect(True)
root.mainloop()
Минусом этого метода: он всегда работает на платформе Microsoft Windows, но он может не работать на некоторых платформах Unix и MacOS.
EDIT:
Вы просили дать разъяснения относительно update_idletasks()
, я думаю, что это будет лучше, если я цитирую непосредственно из его документации, как это ясно (но если вы не понимаете эту цитату, пожалуйста, дайте мне знать):
Некоторые задачи в обновлении дисплея, такие как изменение размера и перерисовки виджетов, называются праздными задачи, потому что они, как правило, откладываются до тех пор, приложение закончит обработку событий и пошли обратно в , чтобы ждать новых событий.
Если вы хотите принудительно обновить дисплей до того, как приложение запустится, вызовите метод w.update_idletasks() для любого виджета .
- 1. Toggle Fullscreen (overrideredirect и geometry)
- 2. tkinter overrideredirect stop entry working
- 3. Перетащить окно при использовании overrideredirect
- 4. что делает logging.basicConfig делает?
- 5. Python/Tkinter: Удалить заголовок без overrideredirect()
- 6. Что делает «&&»?
- 7. Что делает?
- 8. Что делает `? .`?
- 9. Что делает $()?
- 10. Что делает GhostDoc Free, что Visual Studio еще не делает?
- 11. Что делает ключевое слово 'extern', что делает следующий код законным?
- 12. Что делает. оператор делает в matlab?
- 13. Почему это делает то, что делает?
- 14. Что делает dojo.empty()/domConstruct.empty() делает точно
- 15. Что делает exec.skip делает в команде Maven
- 16. что делает cd /./ делает в bash
- 17. Понимание того, что делает запрос и делает?
- 18. C++ STL, что делает базу() делает
- 19. index.js не делает, что index.ts делает
- 20. Что делает & делает в конце команды wc?
- 21. Что делает & делает в этом случае?
- 22. Что делает этот код линия делает
- 23. Что делает .call?
- 24. Что делает «= +» в JavaScript?
- 25. Что делает WinJS.strictProcessing()?
- 26. Что делает WT_EXECUTEINUITHREAD?
- 27. Что делает resultSet.next() do
- 28. Что именно делает document.normalize?
- 29. что SED -i делает
- 30. Что делает grep * делать?
не могли бы вы объяснить, почему в этом случае требуется update_idletasks()? я не совсем понял, что означает «применение следующих простоя». Большое спасибо! – momo
Проверьте мои изменения (и извините за эту позднюю обратную связь, я был в автономном режиме) @momo –