python图形界面开发之文本元素更新

1.设置文本元素的参数

sg.T(text,
          key='-Text-',
          size=(30,20),
          font=('宋体', 20),
          auto_size_text=True,    # 窗口能否自动适应整个文本的大小
          enable_events=None,      # 事件属性,设为true时,点击文本就会发生事件
          relief=None,      # 文本边框的效果,'raised','sunken','flat','ridge','solid','groove'
          border_width=None, # 设置边界宽度
          text_color=None,    # 文本颜色
          background_color=None,   # 文本背景颜色
          justification=None, # 对齐方式:'left','right','center'
          pad=None, # 元素间隔设定,元素与元素之间的间隔设定
          grab=None, # 为真时,点此元素可以移动拖拽窗口
          tooltip='这是一个提示文本', # 悬浮文本,当光标置于该元素上方,会显示设定的文本
          visible=True # 光标可见状态

2.设定文本元素的更新方法
在事件发生了以后,我们需要去更新文本元素的设定方法。就比如说用户在页面上点击了某个按钮,也免得文本元素需要发生一些变化的情况下,我们要怎么做。

# 文本元素的更新方法,两种方法均可
window[key].update(想要更新的内容)
window[key].Update()
# 文本元素可以更新的属性
update(
	value=None, # str更新文本
	background_color=None, # 更新文本背景颜色
	text_color=None, # 更新文本颜色
	font=None, # 更新字体的名称或者大小
	visible=None # 更新元素的可见状态

一个小练习
制作一个可中英文切换的界面,如下所示,点击中文下面显示中文,点击english下面显示英文
请添加图片描述
请添加图片描述

代码:

# 页面的整体布局
layout = [
    [sg.B('中文'), sg.B('English')],
    [sg.T('请输入基本信息', key='-TITCE-')],
    [sg.T('姓名', key='-NAMETXT-',size=(8,1)),sg.InputText()],# 因为发现有文本框没有对齐的情况
    [sg.T('性别',key='-SEXTXT-',size=(8,1)),sg.InputText()],
    [sg.T('年龄',key='-AGETXT-',size=(8,1)),sg.InputText()],
    [sg.B('确认',key='-CONF-'), sg.B('取消',key='-CANCEL-')]
   
# 页面元素更新
if event == '中文':
	window['-TITCE-'].update(
            '请输入基本信息',  # str更新文本
        )
	window['-NAMETXT-'].update(
            '姓名',  
        )
        window['-SEXTXT-'].update(
            '性别',
        )
	window['-AGETXT-'].update(
            '年龄',  
        )
	window['-CONF-'].update(
            '确认', 
        )
	window['-CANCEL-'].update(
            '取消',  
        )

if event == 'English':
	window['-TITCE-'].update(
            'please enter the basic information',  #
        )
	window['-NAMETXT-'].update(
           'name', 
        )
	window['-SEXTXT-'].update(
            'sex',  
        )
	window['-AGETXT-'].update(
            'age',  
        )
	window['-CONF-'].update(
            'confirm',  
        )
	window['-CANCEL-'].update(
            'cancel',  
        )
]

这是一个比较简单的小练习,主要是对前面所学的一个知识的掌握。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值