用Tkinter打造GUI开发工具(50)改变对话窗askstring的大小和位置等信息

116 篇文章 46 订阅
114 篇文章 108 订阅

用Tkinter打造GUI开发工具(50)改变Tkinter对话窗askstring的大小和位置等信息
在Tkinter中,对话框的位置和大小都是固定的。因此很多朋友在使用时感觉很不方便。
我们在用Tkinter开发复杂窗口应用程序时,经常需要对Tkinter对话窗askstring的大小和位置做修改。
我们这个给出修改的相关代码,给大家借鉴。
核心模块代码如下。

from tkinter.simpledialog import askstring, Dialog

#移动窗口到屏幕中央       
def setCenter(root,w=0,h=0):
    ws = root.winfo_screenwidth()
    hs = root.winfo_screenheight()
    if w==0 or h==0:
        w= root.winfo_width()   #获取窗口宽度(单位:像素)
        h = root.winfo_height()  #获取窗口高度(单位:像素)
    x = int( (ws/2) - (w/2) )
    y = int( (hs/2) - (h/2) )
    root.geometry('{}x{}+{}+{}'.format(w, h, x, y))

##改变对话框大小并移动到屏幕中心
def change_geometry():
    global wctj,mroot
    widget = mroot.winfo_children()[-1]
    if isinstance(widget, Dialog):
        htk.setCenter(widget,w=300,h=140)

##使用对话框        
def show_dialog():
    global wctj,mroot
    mroot.after(10, change_geometry)
    return askstring('问财选挂', '问财条件',initialvalue=wctj, parent=mroot)

在程序中使用示例代码如下:

import  tkinter  as  tk   #导入Tkinter
global wctj,mroot
wctj='近期涨幅最前的100名股票'
mroot=tk.Tk()
wctj=show_dialog()
mroot.mainloop()

程序中改了对话框的大小,并且把对话框移到屏幕中心位置。
有新的想法或问题可以我交流.
欢迎继续关注我的博客。
超越自己是我的每一步!我的进步就是你的进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荷蒲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值