「总结篇」Python所有的界面操作总结

您所在的位置:网站首页 python如何设计界面 「总结篇」Python所有的界面操作总结

「总结篇」Python所有的界面操作总结

#「总结篇」Python所有的界面操作总结| 来源: 网络整理| 查看: 265

0 分享至

用微信扫码二维码

分享至好友和朋友圈

Python最强大的地方在于:可以创造软件,写软件就离不开界面,那么你知道Python的界面操作技巧吗?

主窗体设计

界面设置:

import tkinter as tk

1、引入tkinter模块,并且引用为tk

window = tk.Tk()

2、将主窗体实例化,并且命名为window

window.title("新软件")

3、设置主窗体的标题为【新软件】

window.iconbitmap("mc.ico")

4、设置主窗口的ico图标

width = 380

5、设置主窗体的宽度为380

height = 300

6、设置主窗体的高度为300

screenwidth = window.winfo_screenwidth()screenheight = window.winfo_screenheight()alignstr = '%dx%d+%d+%d' % (width, height, (screenwidth-width)/2, (screenheight-height)/2)window.geometry(alignstr)

7、获取屏幕的宽、高,将主窗体置于屏幕中间处

window_son = tk.Toplevel(window)

8、在主窗体之上再创建一个窗口window_son,完全不影响其他程序的运行,可用于进度展示,出错提醒等

window.destroy()

9、让指定窗体消失

window.mainloop()

10、window窗体可以执行

元素设置:

tk.Label(window, text='用户名:', font=("微软雅黑", 10), fg="#666666").place(x=50, y=150)

1、在window窗体的(50,150)位置添加一个用户名的文字标签,字体为‘微软雅黑’,字号是:10,颜色是#666666,其中的.place方法可以换成.grid(column=1, row=0) 意思是将其列设置为1,行设置为0,也可以加bg='green', width=30, height=2这些属性

var_usr_name = tk.StringVar()var_usr_name.set('admin')entry_usr_name=tk.Entry(window, textvariable=var_usr_name)entry_usr_name.place(x=160, y=150)var_usr_name.focus()

2、在window窗体的(160,150)位置添加一个输入框,初始值设置为'admin',如果是密码框,不让显示内容的话,第三行的参数里边添加 show='*',获取输入框的内容用:usr_name = var_usr_name.get(),.place方法可以换成.grid方法,最后一句的意思是启动的时候,光标默认会出现在该文本框中

canvas = tk.Canvas(window, height=200, width=500)image_file = tk.PhotoImage(file="1.gif")image=canvas.create_image(0,0,anchor='nw',image=image_file)canvas.pack(side='top')

3、在window窗体里边新建一个1.gif的背景图片,宽度500,高度200,对齐方式为顶部对齐

img=PhotoImage(file='images/1.gif')tk.Button(windows,height='130',text='click',compound='top',image=img,cursor="hand2",relief="groove",bd="0",bg="white",command=rixiao_sc).place(x=20, y=50)

4、新建一个图片+文字按钮,图片为'images/1.gif',文字为'click',高度是130,点上去变成hand2,小手样式,按钮下沉样式relief,command为点击行为

tk.Button(window,text="click",width=10,command=lambda:window.wm_attributes('-topmost',1)).place(x=40, y=220)

5、在window窗体(40,220)的位置添加一个点击置顶的功能

from tkinter import ttkcmb = ttk.Combobox(window, width=12)cmb.pack()cmb['value'] = ('选项一','选项二')cmb.grid(padx=100,pady=20)cmb.current(0)value_get = cmb.get()

6、在window窗体(100,20)的位置添加一个下拉框,选项有两个,默认选择第一个,最后一行是获取单选框的值

chs = tk.IntVar()check1 = tk.Checkbutton(win, text="Disabled", variable=chs, state='disabled')check1.select()check1.grid(column=0, row=4, sticky=tk.W)

7、复选框:第1行:用来获取复选框是否被勾选,通过chVarDis.get()来获取其的状态,其状态值为int类型 勾选为1 未勾选为0;第2行:text为该复选框后面显示的名称, variable将该复选框的状态赋值给一个变量,当state='disabled'时,该复选框为灰色,不能点的状态;第3行:该复选框是否勾选,select为勾选, deselect为不勾选;第4行:位置,sticky=tk.W 当该列中其他行或该行中的其他列的某一个功能拉长这列的宽度或高度时,设定该值可以保证本行保持左对齐,N:北/上对齐 S:南/下对齐 W:西/左对齐 E:东/右对齐

radVar = tk.IntVar()rad1=tk.Radiobutton(win,text='000',variable=radVar, value=1, command=radCall)

8、单选按钮,第一行:通过tk.IntVar() 获取单选按钮value参数对应的值,第二行:当该单选按钮被点击时,会触发参数command对应的函数

scr=scrolledtext.ScrolledText(win, width=30, height=10, wrap=tk.WORD)scr.grid(column=0, columnspan=3)

9、滚动文本框,第一行:wrap=tk.WORD 这个值表示在行的末尾如果有一个单词跨行,会将该单词放到下一行显示,比如输入hello,he在第一行的行尾,llo在第二行的行首, 这时如果wrap=tk.WORD,则表示会将 hello 这个单词挪到下一行行首显示, wrap默认的值为tk.CHAR;第二行:columnspan 个人理解是将3列合并成一列 也可以通过 sticky=tk.W 来控制该文本框的对齐方式

功能区

常用功能:

import tkinter.messageboxtk.messagebox.showinfo("等一等", "正在规划中")

1、弹出一个标题是"等一等",内容是"正在规划中"的提示框

boxvalue = tkinter.StringVar()boxlist = ttk.Combobox(win, textvariable=boxvalue)boxlist["values"] = ("1", "2", "3", "4")boxlist.current(0)boxlist.bind("", go)boxlist.pack()

2、可输入的下拉框,选中的时候执行go函数

def click():an.configure(text='Hello ' + name.get() )an = ttk.Button(win, text="000", command=click)def bian():var.set('进度:%s/%s页' % (i, page))l.update()var = tk.StringVar()var.set('下载进度')l = tk.Label(window, textvariable=var)l.place(x=118, y=214)

4、可用于设置进度的变化

定位

常用功能:

tk.Label(window, text=1).grid(row=i, column=j, padx=10, pady=10, ipadx=10, ipady=10)

1、其实 grid 就是用表格的形式定位的。这里的参数 row 为行,colum 为列,padx 就是单元格左右间距,pady 就是单元格上下间距,ipadx是单元格内部元素与单元格的左右间距,ipady是单元格内部元素与单元格的上下间距。

tk.Label(window, text='P', fg='red').pack(side='top') 2、pack(), 他会按照上下左右的方式排列.例如:side='top' side='bottom' side='left' side='right'tk.Label(window, text='Pl', font=('Arial', 20), ).place(x=50, y=100, anchor='nw')

3、place(), 这个比较容易理解,就是给精确的坐标来定位,如此处给的(50, 100),就是将这个部件放在坐标为(x=50, y=100)的这个位置, 后面的参数 anchor='nw',就是前面所讲的锚定点是西北角。

结束语

Python的界面操作远不止这么多,它能帮我们实现强大的视觉效果,如果你遇到更好的功能,欢迎下方留言补充,程序因为分享而变得更加高效美丽!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

/阅读下一篇/ 返回网易首页 下载网易新闻客户端


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3