使用Python Tk模块 开发桌面应用程序(一)

Python3+

导入tk模块进行测试

demo

import tkinter
tkinter._test()

点击 Click me 两边会增加括号
点击 QUIT 退出程序

使用Python Tk模块 开发桌面应用程序(一)_第1张图片

创建一个tk窗口

from tkinter import *
root = Tk()  # 创建窗口对象
root.mainloop()

向窗口添加一个标签 Hello world!

from tkinter import *
root = Tk()  # 创建窗口对象
root.wm_title("python GUI")

wl = Label(root, text="hello world!")
wl.pack()
root.mainloop()

tk 组件及按钮

Button 按钮控件;在程序中显示按钮。
Canvas 画布控件;显示图形元素如线条或文本
Checkbutton 多选框控件;用于在程序中提供多项选择框
Entry 输入控件;用于显示简单的文本内容
Frame 框架控件;在屏幕上显示一个矩形区域,多用来作为容器
Label 标签控件;可以显示文本和位图
Listbox 列表框控件;在Listbox窗口小部件是用来显示一个字符串列表给用户
Menubutton 菜单按钮控件,由于显示菜单项。
Menu 菜单控件;显示菜单栏,下拉菜单和弹出菜单
Message 消息控件;用来显示多行文本,与label比较类似
Radiobutton 单选按钮控件;显示一个单选的按钮状态
Scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间
Scrollbar 滚动条控件,当内容超过可视化区域时使用,如列表框。.
Text 文本控件;用于显示多行文本
Toplevel 容器控件;用来提供一个单独的对话框,和Frame比较类似
Spinbox 输入控件;与Entry类似,但是可以指定输入范围值
PanedWindow PanedWindow是一个窗口布局管理的插件,可以包含一个或者多个子控件。
LabelFrame labelframe 是一个简单的容器控件。常用与复杂的窗口布局。
tkMessageBox 用于显示你应用程序的消息框。

按钮事件绑定

在按钮组件被声明的时候加上 command 属性声明,command属性接收一个函数名。

demo

from tkinter import *


def myLabel():
    global root, i
    s = Label(root, text="--%d--" % i)
    s.pack()
    i += 1


root = Tk()
i = 1
b = Button(root, text="    +1    ", command=myLabel)
b.pack()

root.mainloop()

使用Python Tk模块 开发桌面应用程序(一)_第2张图片

事件绑定方法二

from tkinter import *


def myLabel(evevt):
    global root, i
    s = Label(root, text="--%d--" % i)
    s.pack()
    i += 1


root = Tk()
i = 1
b = Button(root, text="    +1    ")
b.bind("", myLabel)  # 传递 鼠标左键单击 事件
b.pack()

root.mainloop()

属性设置

Dimension 控件大小;
Color 控件颜色;
Font 控件字体;
Anchor 锚点;
Relief 控件样式;
Bitmap 位图;
Cursor 光标;
使用Python Tk模块 开发桌面应用程序(一)_第3张图片

样式设置

from tkinter import *

root = Tk()

b1 = Button(root, text="Python GUI")
b1["width"] = 20
b1["height"] = 4
b1.pack()

b2 = Button(root, text="Hello World!")
b2["width"] = 20
b2["background"] = "pink"
b2.pack()

root.mainloop()

exit(?)

你可能感兴趣的:(Python,有趣,pythonGUI,python,tkinter,python,桌面软件开发)