Jython程序可以和Java无缝集成。除了一些标准模块,Jython使用Java的模块。Jython几乎拥有标准的Python中不依赖于C语言的全部模块。比如,Jython的用户界面将使用Swing,AWT或者SWT。Jython可以被动态或静态地编译成Java字节码。
2.Tkinter编程:
Tkinter是内置到python的安装包中,只要安装好python之后就能import Tkinter库,而且 IDEL也是用tkinter编写而成
步骤
导入Tkinter模块
创建控件
指定这个空间的master,即这个控件属于哪一个
告诉GM(genmetry Manager)有一个控件产生了
3.简单示例
import tkinter
# 创建
win = tkinter.Tk()
# 设置标题
win.title("awen")
# 设置几何形状(设置大小和位置)
win.geometry("800x800+200+100") # "宽x高+距离屏幕左边缘的距离 + 距离屏幕上边缘的距离"
# 进入消息循环
# 显示窗口
win.mainloop()
4. Tkinter组件
lable 标签控件用来显示文本
(1)属性:
# master 表示父窗体
# text显示文本的内容
# bg背景色 可以是十六进制数,可以是red
# fg字体颜色
# font=("黑体",30) 设置字体样式和大小
# wraplength 指定text文本中多宽进行换行
# justify 设置换行后的对齐方法
# anchor 位置 n北 e东 s南 w西 center居中 ne东北 se东南 sw西南 nw西北
# width宽度 1 表示约一个字符的长度
# height高度 1表示约一个字符的高度
例:
tkinter.Label(win,text="awenyunnnn问问",width=20,height=10,bg="blue",fg="#ffffff",font=("黑体",30),
wraplength="300",justify="right",anchor="ne")
显示
label.pack()
button 按钮控件;在程序中显示按钮。
例
button1 = tkinter.Button(win,text="按钮",bg ="#ffcccc" ,
command=func,width=10,height=2)
退出
tkinter.Button(win, text="退出", command=win.quit)
command传递参数
command=lambda:callback(argv..)
entry输入控件;用于显示简单的文本内容
例
# 绑定控件,操作输入框中的内容
e = tkinter.Variable()
entry1 = tkinter.Entry(win,textvariable=e)
entry1.pack()
获取输入框中的值
#e就代表输入框这个对象
print(e.get())
print(entry1.get())
设置值
e.set("hello world")
练习
点击按钮输出输入框里的内容
text文本控件;用于显示多行文本
例
#height显示的行数
text = tkinter.Text(win, width=30, height=4)
插入值
text.insert(tkinter.INSERT,str)
combobox 下拉控件
导入ttk
from tkinter import ttk
绑定变量
str = tkinter.StringVar()
com = ttk.Combobox(win,textvariable = str)
该下拉控件设置数据
com["value"] = ("北京","上海","广州","深圳")
设置默认值
com.current(3)
绑定事件
#绑定事件
def func(event):
print(com.get())
print(str.get())
# 绑定事件
com.bind("<
RadioButton单选按钮控件;显示一个单选的按钮状态
例
radio1 = tkinter.Radiobutton(win,text="男",command=updata,variable=r,value=1)
radio1.pack()
radio2 = tkinter.Radiobutton(win,text="女",command=updata,variable=r1,value=2)
radio2.pack()
radio3 = tkinter.Radiobutton(win,text="啦啦",command=updata,variable=r1,value=3)
radio3.pack()
绑定一个变量
# 绑定一个变量
r = tkinter.IntVar()
获取选项
def updata():
print(r.get())
CheckButton多选框控件;用于在程序中提供多项选择框
例
# 多选框
check1 = tkinter.Checkbutton(win,text="money",variable=hobby1,command=updata)
check1.pack()
check2 = tkinter.Checkbutton(win,text="power",variable= hobby2,command=updata)
check2.pack()
check3 = tkinter.Checkbutton(win,text="beautiful girl",variable=hobby3,command=updata)
要绑定的变量
# 要绑定的变量
hobby1 = tkinter.BooleanVar()
获取是否选中
check1Var1.get() == True
Listbox列表框控件;在Listbox窗口小部件是用来显示一个字符串列表给用户
创建
lb = tkinter.Listbox(win,selectmode=tkinter.BROWSE)
添加多个元素
items = ["good", "nice", "handsome", "vg", "vn"]
for item in items:
# 按顺序添加
lb.insert(tkinter.END,item)
在开始添加
lb.insert(tkinter.ACTIVE,"cool")
删除
参数1为开始的索引,参数2为结束的索引,如果不指定参数2,只删除第一个索引处的内容
# lb.delete(1,5)
#lb.delete(1)
选中
选中 参数1为开始的索引,参数2为结束的索引,如果不指定参数2,只选中第一个索引处的内容
lb.select_set(2,5)
#lb.select_set(2)
取消
lb.select_clear(2,4)
获取列表中元素个数
lb.size()
从列表中取值
print(lb.curselection()) 获得选中的索引项
lb.get(2)
判读一个选项是否被选中
lb.selection_includes(1)
scale 范围控件;显示一个数值刻度,为输出限定范围的数字区间
创建
# 拖动条
scale = tkinter.Scale(win,from_ = 0,to = 100,orient = tkinter.HORIZONTAL,tickinterval = 10,length = 200)
参数说明
供用户通过拖拽指示器改变变量的值,可以水平,也可以竖直
from_ 设置起始值
to 设置结束值
orient 设置方向tkinter.HORIZONTAL 水平
tkinter.VERTICAL 竖直
length 水平时表示宽度,竖直时表示高度
tickinterval 选择值将会为该值的倍数,(Progress 标度)
设置值
scale.set(20)
获取当前长度
scale.get()
Spinbox 输入控件;与Entry类似,但是可以指定输入范围值
创建
t = tkinter.StringVar()
sb = tkinter.Spinbox(win,from_= 0 ,to = 100,increment = 2,textvariable = t,command = updata)
设置值
t.set(50)
frame框架控件;在屏幕上显示一个矩形区域,多用来作为容器
# 创建空的框架