You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用同一个按钮实现窗口的两次切换式调整大小?

窗口大小切换失效的解决方法

你的问题出在判断窗口尺寸的逻辑上:root.geometry('500x500')是设置窗口为500x500尺寸的操作,不是用来获取当前尺寸并做判断的。这个调用的返回值无法作为布尔条件,导致每次执行函数时,if分支永远不成立,只会走else里的代码,所以只能切换到500x500,切不回384x470。

修正后的代码需要先获取当前窗口的几何信息,再判断尺寸:

def sizeWindow():
    # 获取当前窗口几何信息,格式类似 "500x500+100+200"(后面是窗口位置)
    current_geo = root.geometry()
    # 提取宽高部分,忽略位置信息
    width_height = current_geo.split('+')[0]
    
    if width_height == '500x500':
        root.geometry('384x470')
        buttonWinSize.configure(text=">>")  # 对应修改按钮文本,提示切换方向
    else:
        root.geometry('500x500')
        buttonWinSize.configure(text="<<")

另外注意,切换回小窗口时也要同步修改按钮文本,这样交互更直观。

内容的提问来源于stack exchange,提问作者Liquid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 12:25:23