Chapter 1: Creating the GUI Form and Adding Widgets

简介: # -*- coding: utf-8 -*-# importimport tkinter as tk # 1 importsfrom tkinter import ttkfrom tkinter import scrolledtext as stwin = tk.
# -*- coding: utf-8 -*-

# import
import tkinter as tk  # 1 imports
from tkinter import ttk

from tkinter import scrolledtext as st

win = tk.Tk()  # 2 Create instance
win.title("Python GUI")  # 3 Add a title
# win.resizable(0, 0)           # 4 Disable resizing the GUI

# add a label                   #4
aLabel = ttk.Label(win, text="输入文本:")
aLabel.grid(column=0, row=0)  # 5

ttk.Label(win, text="choose a number").grid(column=1, row=0)
number = tk.StringVar()

# only be able to select the values we have programmed into the Combobox:state="readonly"
numberChosen = ttk.Combobox(win, width=12, textvariable=number, state="readonly")
numberChosen.grid(column=1, row=1)
numberChosen["values"] = (1, 2, 3, 4, 5, 6, 12)
numberChosen.current(3)


def clickMe():
    action.configure(text="hello " + name.get() + "-" + number.get())
    # aLabel.configure(foreground="red")


# add a button                   #4
action = ttk.Button(win, text="点我", command=clickMe)
action.grid(column=3, row=1)
# action.configure(state="disabled")  # Disable the Button Widget

# Adding a Textbox Entry widget    # 5
name = tk.StringVar()
nameEntered = ttk.Entry(win, width=12, textvariable=name)
nameEntered.grid(column=0, row=1)
nameEntered.focus()  # Place cursor into name Entry


# Creating three checkbuttons    # 1
# 0 (unchecked) or 1 (checked) so the type of the variable is a tkinter integer.
chVarDis = tk.IntVar()           # 2
check1 = tk.Checkbutton(win, text="Disabled", variable=chVarDis, state='disabled')                     # 3
check1.select()                  # 4
check1.grid(column=0, row=4, sticky=tk.W) # 5

chVarUn = tk.IntVar()            # 6
check2 = tk.Checkbutton(win, text="UnChecked", variable=chVarUn)
check2.deselect()                # 8
check2.grid(column=1, row=4, sticky=tk.W) # 9

chVarEn = tk.IntVar()            # 10
check3 = tk.Checkbutton(win, text="Enabled", variable=chVarEn)
check3.select()                  # 12
check3.grid(column=2, row=4, sticky=tk.W) # 13


# 代码重构(refactor our code)
# Radiobutton Globals #1 更多颜色参考:http://www.tcl.tk/man/tcl8.5/TkCmd/colors.htm
COLOR1 = "DarkSalmon" #2
COLOR2 = "honeydew" #3
COLOR3 = "AliceBlue" #4
# Radiobutton Callback # 5
# colors = ["DarkSalmon", "honeydew", "AliceBlue"]
# create three Radiobuttons using one variable(绑定到一个变量上可以在单选按钮中只选中一个)
radVar = tk.IntVar()
def radCall(): #6
      radSel=radVar.get()
      if   radSel == 1: win.configure(background=COLOR1)
      elif radSel == 2: win.configure(background=COLOR2)
      elif radSel == 3: win.configure(background=COLOR3)

rad1 = tk.Radiobutton(win, text=COLOR1, variable=radVar, value=1, command=radCall)              # 9
rad1.grid(column=0, row=5, sticky=tk.W)  # 10
rad2 = tk.Radiobutton(win, text=COLOR2, variable=radVar, value=2, command=radCall)                             # 11
rad2.grid(column=1, row=5, sticky=tk.W)  # 12
rad3 = tk.Radiobutton(win, text=COLOR3, variable=radVar, value=3, command=radCall)                             # 13
rad3.grid(column=2, row=5, sticky=tk.W)  # 14


# Using a scrolled Text control
scrollW = 30
scrollH = 3
scroll = st.ScrolledText(win,width = scrollW, height=scrollH,wrap= tk.WORD)
scroll.grid(column=0, columnspan=3)
scroll.focus()


win.mainloop()  # 5 Start GUI
目录
相关文章
Important table for launchpad Designer and configuration
Important table for launchpad Designer and configuration
107 0
Important table for launchpad Designer and configuration
Important table for Fiori launchpad Designer and configuration
Important table for Fiori launchpad Designer and configuration
Important table for Fiori launchpad Designer and configuration
how is home button implemented in Fiori launchpad
how is home button implemented in Fiori launchpad
how is home button implemented in Fiori launchpad
SAP Fiori Elements - Smart table add button debug 2 setDirty
SAP Fiori Elements - Smart table add button debug 2 setDirty
106 0
SAP Fiori Elements - Smart table add button debug 2 setDirty
UI5 control inheritance implementation question
UI5 control inheritance implementation question
UI5 control inheritance implementation question
how drop down list description is displayed by UI framework
how drop down list description is displayed by UI framework
156 0
how drop down list description is displayed by UI framework
|
Shell
when is SAP UI5 where is title 'Scaffold in Shell integration test' defined
Created by Wang, Jerry, last modified on Mar 26, 2015
81 0
when is SAP UI5 where is title 'Scaffold in Shell integration test' defined
|
XML 数据格式
SAP Form print tool
Sent: Thursday, October 30, 2008 8:05 PM
155 0
SAP Form print tool
使用工具快速找出custom work center使用的ui component
使用工具快速找出custom work center使用的ui component
108 0
使用工具快速找出custom work center使用的ui component
Cannot find source code based button in SE24 - modification assistant
Cannot find source code based button in SE24 - modification assistant
123 0