当前位置: 首页 > news >正文

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

用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,mrootwidget = mroot.winfo_children()[-1]if isinstance(widget, Dialog):htk.setCenter(widget,w=300,h=140)##使用对话框        
def show_dialog():global wctj,mrootmroot.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()

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

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • openharmony 应用支持常驻和自启动
  • 如何优雅使用三目运算符
  • MyBatisPlus 使用 IPage 分页
  • 使用vscode上传git远程仓库流程(Gitee)
  • Mysql基础练习题 1527.患某种疾病的患者 (力扣)
  • Python——破解rar压缩包密码
  • chapter14-集合——(List)——day18
  • Element-ui设置table 选中某行高亮自定义背景色
  • SpringBoot开发——整合Spring Data MongoDB
  • 基于C#+SQL Server2008 开发三层架构(CS界面)图书管理系统
  • 二十三种模式之原型模式(类比制作陶器更好理解一些)
  • 名师开讲,近200名设计师齐聚冠珠瓷砖丨覃思amp;新明珠集团设计营销课圆满举行
  • 3 模拟——788. 旋转数字 ★★
  • E32.【C语言 】练习:蓝桥杯题 懒羊羊字符串
  • 重拾精髓:go doc -http让离线包文档浏览更便捷
  • [PHP内核探索]PHP中的哈希表
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 2017 前端面试准备 - 收藏集 - 掘金
  • 345-反转字符串中的元音字母
  • CentOS6 编译安装 redis-3.2.3
  • idea + plantuml 画流程图
  • Java程序员幽默爆笑锦集
  • leetcode-27. Remove Element
  • Redis字符串类型内部编码剖析
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • Vue.js源码(2):初探List Rendering
  • vue-cli3搭建项目
  • Yii源码解读-服务定位器(Service Locator)
  • 初识 webpack
  • 从0到1:PostCSS 插件开发最佳实践
  • 对象引论
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 回流、重绘及其优化
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 写代码的正确姿势
  • 应用生命周期终极 DevOps 工具包
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 关于Android全面屏虚拟导航栏的适配总结
  • 交换综合实验一
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • (7)svelte 教程: Props(属性)
  • (Forward) Music Player: From UI Proposal to Code
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (备份) esp32 GPIO
  • (补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (已解决)什么是vue导航守卫
  • (转)http协议
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .vimrc 配置项