使用 tkinter 画布,为了计算我显示的图形的大小,我通常使用函数winfo_screenwidth(),并相应地调整我的对象的大小。但是当在有两个显示器的系统上使用时,winfo_screenwidth()返回两个显示器的组合宽度——这会弄乱我的图形。如何分别找出每台显示器的屏幕宽度(以像素为单位)?
我在各种 Linux 机器(Ubuntu 和 Mint)上使用多个版本的 Python 3.x 和多个版本的 tkinter(均为 8.5 或更高版本)时遇到了这个问题。
例如,第一台显示器的宽度为 1440 像素。第二个是 1980 像素宽。winfo_screenwidth()返回 3360。
我需要找到一种方法来独立确定每个显示器的屏幕宽度。
谢谢!
当tkinter表单包含列表框和其他小部件时,单击其他小部件(特别是如果拖动鼠标)会导致列表框丢失其选择 - 这意味着在lisbox中选择/突出显示的元素没有被选中.
我已经在网上的一两处讨论过这个问题,提出了这个解决方案:将列表框exportselection值设置为False:
lb = Listbox(leftPane, width=24, height=4, selectmode=EXTENDED)
lb.exportselection = False
Run Code Online (Sandbox Code Playgroud)
但这在我的应用程序中根本不起作用.(在各种Linux发行版上试用过Tkinter 8.5和Tkinter 8.6.1,Python 3.3,Python 3.4 ......问题非常稳定,无论listobox所在的应用程序,还是部署它的环境. )
想法?