Python tkinter Entry 属性和方法介绍

1. Entry

Entry提供了用户输入内容的功能,也可以作为显示使用。Entry的属性有:

1.1标准属性

        background, bd, bg, borderwidth, cursor,
        exportselection, fg, font, foreground, highlightbackground,
        highlightcolor, highlightthickness, insertbackground,
        insertborderwidth, insertofftime, insertontime, insertwidth,
        invalidcommand, invcmd, justify, relief, selectbackground,
        selectborderwidth, selectforeground, show, state, takefocus,
        textvariable, validate, validatecommand, vcmd, width,
        xscrollcommand

以上属性来自于python tkinter的__init__文件。感兴趣的读者可以打开查看。

1.2方法

Entry有14种方法:

			delete,get,icursor,index,
            insert,selection_adjust,selection_clear,selection_from,
            selection_present, selection_range, selection_to, xview,
            xview_moveto, xview_scroll,

Entry的方法主要是选择输入框中的内容以及索引。

2. Entry属性和方法说明程序

此程序说明了Entry的所有属性和方法。可以通过下拉框选择,查看属性或者方法的效果以及如何设置属性。示例如下:
程序界面

代码由两部分组成,第一部分是Tkinter窗口代码,第二部分是Entry属性数据

2.1 窗口代码

# coding:utf8

import tkinter as tk
from tkinter.ttk import *
from Entry_Parameter import *
import time

cbx_para = None    # 属性下拉框
cbx_method = None  # 方法下拉框
lbl_status = None  # 输出说明性文字
lbl_code = None    #示例代码
lbl_result = None  #结果以及说明
entry_result = None  #示例输入框
frm_code = None    #代码Frame
frm_result = None  #结果Frame
init_para = {
   }     #记录输入框的初始设置
v_str = None       #StringVar变量
check = None       #检查条件注册
srl = None

def GetInitParameter():
    global entry_result
    global init_para
    init_para = {
   }
    for item in Entry_Parameter.parameter:
        index = item.split("/")[0]
        init_para[index] = entry_result[index]


def ClearParameter():
    global entry_result
    global init_para
    for item in Entry_Parameter.parameter:
        index = item.split("/")[0]
        entry_result[index] = init_para[index]

def check_digit(content):
    global lbl_result
    if content.isdigit() or content == "":
        lbl_result['text']='vcmd:'+content
        lbl_result.grid(row=2,column=1)
        return True
    else:
        lbl_result['text']='invvcmd:'+content
        lbl_result.grid(row=2, column=1)
        return False

def Para_Demo(*args):
    global cbx_para
    global lbl_code
    global lbl_status
    global lbl_result
    global frm_result
    global frm_code
    global v_str
    global check
    global srl

    index = cbx_para.current()
    lbl_result.grid_forget()
    entry_result.delete(0,tk.END)
    srl.grid_forget()

    #
    if index in Entry_Parameter.Entry_Para:
        ClearParameter()
        frm_code.grid(row=3, column=1, padx=5, pady=5)
        frm_result.grid(row=3, column=2, padx=5, pady=5)

        frm_code["text"] = Entry_Parameter.parameter[index] + ":代码"
        frm_result["text"] = Entry_Parameter.parameter[index] + ":效果"
        temp = Entry_Parameter.Entry_Para[index]
        dis_code = ""
        for item in range(1, len(temp[0])):
            dis_code = dis_code + temp[0][item] + "\n"
        dis_code += temp[1]
        lbl_code['text'] = dis_code
        for item in range(1, len(temp[0])):
            exec(temp[0][item])
        lbl_status['text'] = temp[2]
    else:
        frm_code.grid_forget()
        frm_result.grid_forget()

def Method_Demo(*args):
    global cbx_method
    global lbl_code
    global lbl_status
    global lbl_result
    global frm_result
    global frm_code

    index = cbx_method.current()
    lbl_result.grid_forget()
    entry_result.delete(0, tk.END)

    #
    if index in Entry_Parameter.Entry_Method:
        ClearParameter()
        frm_code.grid(row=3, column=1, padx=5, pady=5)
        frm_result.grid(row=3, column=2, padx=5
  • 12
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值