📜  Python Tkinter

📅  最后修改于: 2020-10-27 01:49:38             🧑  作者: Mango

Python Tkinter条目

Entry小部件用于向用户提供单行文本框,以接受来自用户的值。我们可以使用Entry小部件来接受来自用户的文本字符串。它只能用于用户的一行文本。对于多行文本,我们必须使用文本小部件。

下面给出了使用Entry小部件的语法。

句法

w = Entry (parent, options) 

下面列出了可能的选项。

SN Option Description
1 bg The background color of the widget.
2 bd The border width of the widget in pixels.
3 cursor The mouse pointer will be changed to the cursor type set to the arrow, dot, etc.
4 exportselection The text written inside the entry box will be automatically copied to the clipboard by default. We can set the exportselection to 0 to not copy this.
5 fg It represents the color of the text.
6 font It represents the font type of the text.
7 highlightbackground It represents the color to display in the traversal highlight region when the widget does not have the input focus.
8 highlightcolor It represents the color to use for the traversal highlight rectangle that is drawn around the widget when it has the input focus.
9 highlightthickness It represents a non-negative value indicating the width of the highlight rectangle to draw around the outside of the widget when it has the input focus.
10 insertbackground It represents the color to use as background in the area covered by the insertion cursor. This color will normally override either the normal background for the widget.
11 insertborderwidth It represents a non-negative value indicating the width of the 3-D border to draw around the insertion cursor. The value may have any of the forms acceptable to Tk_GetPixels.
12 insertofftime It represents a non-negative integer value indicating the number of milliseconds the insertion cursor should remain “off” in each blink cycle. If this option is zero, then the cursor doesn’t blink: it is on all the time.
13 insertontime Specifies a non-negative integer value indicating the number of milliseconds the insertion cursor should remain “on” in each blink cycle.
14 insertwidth It represents the value indicating the total width of the insertion cursor. The value may have any of the forms acceptable to Tk_GetPixels.
15 justify It specifies how the text is organized if the text contains multiple lines.
16 relief It specifies the type of the border. Its default value is FLAT.
17 selectbackground The background color of the selected text.
18 selectborderwidth The width of the border to display around the selected task.
19 selectforeground The font color of the selected task.
20 show It is used to show the entry text of some other type instead of the string. For example, the password is typed using stars (*).
21 textvariable It is set to the instance of the StringVar to retrieve the text from the entry.
22 width The width of the displayed text or image.
23 xscrollcommand The entry widget can be linked to the horizontal scrollbar if we want the user to enter more text then the actual width of the widget.

# !/usr/bin/python3

from tkinter import *

top = Tk()

top.geometry("400x250")

name = Label(top, text = "Name").place(x = 30,y = 50)

email = Label(top, text = "Email").place(x = 30, y = 90)

password = Label(top, text = "Password").place(x = 30, y = 130)

sbmitbtn = Button(top, text = "Submit",activebackground = "pink", activeforeground = "blue").place(x = 30, y = 170)

e1 = Entry(top).place(x = 80, y = 50)


e2 = Entry(top).place(x = 80, y = 90)


e3 = Entry(top).place(x = 95, y = 130)

top.mainloop()

输出:

条目小部件方法

Python提供了多种方法来配置写在小部件内部的数据。 Entry小部件提供了以下方法。

SN Method Description
1 delete(first, last = none) It is used to delete the specified characters inside the widget.
2 get() It is used to get the text written inside the widget.
3 icursor(index) It is used to change the insertion cursor position. We can specify the index of the character before which, the cursor to be placed.
4 index(index) It is used to place the cursor to the left of the character written at the specified index.
5 insert(index,s) It is used to insert the specified string before the character placed at the specified index.
6 select_adjust(index) It includes the selection of the character present at the specified index.
7 select_clear() It clears the selection if some selection has been done.
8 select_form(index) It sets the anchor index position to the character specified by the index.
9 select_present() It returns true if some text in the Entry is selected otherwise returns false.
10 select_range(start,end) It selects the characters to exist between the specified range.
11 select_to(index) It selects all the characters from the beginning to the specified index.
12 xview(index) It is used to link the entry widget to a horizontal scrollbar.
13 xview_scroll(number,what) It is used to make the entry scrollable horizontally.

示例:一个简单的计算器

import tkinter as tk
from functools import partial
 
 
def call_result(label_result, n1, n2):
    num1 = (n1.get())
    num2 = (n2.get())
    result = int(num1)+int(num2)
    label_result.config(text="Result = %d" % result)
    return
 
root = tk.Tk()
root.geometry('400x200+100+200')

root.title('Calculator')
 
number1 = tk.StringVar()
number2 = tk.StringVar()

labelNum1 = tk.Label(root, text="A").grid(row=1, column=0)

labelNum2 = tk.Label(root, text="B").grid(row=2, column=0)

labelResult = tk.Label(root)

labelResult.grid(row=7, column=2)

entryNum1 = tk.Entry(root, textvariable=number1).grid(row=1, column=2)

entryNum2 = tk.Entry(root, textvariable=number2).grid(row=2, column=2)

call_result = partial(call_result, labelResult, number1, number2)

buttonCal = tk.Button(root, text="Calculate", command=call_result).grid(row=3, column=0)

root.mainloop()

输出: