当前位置: 首页 > news >正文

能做门户网站带论坛功能的cmsseo技巧课程

能做门户网站带论坛功能的cms,seo技巧课程,2003系统建网站,网站建设方任务 职责Tkinter 是 Python 标准库中的一个模块,用于创建图形用户界面 (GUI)。它是 Python 中最常用的 GUI 库之一,因为它集成在 Python 的标准发行版中,无需额外安装即可使用。 一、基本用法 1. 简单示例 import tkinter as tk# 创建主窗口 root …

Tkinter 是 Python 标准库中的一个模块,用于创建图形用户界面 (GUI)。它是 Python 中最常用的 GUI 库之一,因为它集成在 Python 的标准发行版中,无需额外安装即可使用。

一、基本用法

1. 简单示例

import tkinter as tk# 创建主窗口
root = tk.Tk()
root.title("Hello Tkinter")# 创建标签并添加到主窗口
label = tk.Label(root, text="Hello, World!")
label.pack()# 运行主循环
root.mainloop()

2. 基本构成

二、组件用法

在 Python 的 tkinter 中,有 21 个核⼼组件,它们提供 了最基本的功能,这 21 个核⼼组件是 : Toplevel、Label、Button、Canvas、Checkbutton、Entry、Frame、LabelFrame、 Listbox、Menu、Menubutton、Message、OptionMenu、PaneWindow 、 Radiobutton 、 Scale 、Scrollbar 、Spinbox 、Text、Bitmap、Image

1. 窗口

import tkinter as tkroot = tk.Tk()
root.title("Main Window")	# 设置窗口标题
root.geometry("400x300")  	# 设置窗口大小
root.iconbitmap("ico.ico")	# 窗口图标
root.mainloop()

窗口的常用属性如下:

  • title:窗口标题
  • geometry :窗口大小设置
  • iconbitmap:窗口图标

2. 标签

标签可以说是最简单的窗⼝组件了,它不需要执⾏任何功能,只是⽤来显示信息。

label= Label(root, text = "欢迎来到tkinter")
label.pack()

3. 按钮

3.1 添加按钮

# 方式一
b1 = Button(root, text = "Python", command = myLabel)
b1.pack()# 方式二
b2 = Button(root, text = "Python") # command = myLabel ⽊有了
b2.bind("<Button-1>", myLabel) # 多了这⼀句

3.2 设置属性

button["width"] = 20			# 设置宽度
button["height"] = 4			# 设置高度
button["background"] = "white"	# 设置背景色

4. 输入框

输入框的类名为:Entry,如果需要密码框,则设置属性 show'*' 即可。

# ⽤户名
a_label = Label(root, text = "⽤户名:")
a_label.grid(row = 0, column = 0, sticky = W)
a_entry = Entry(root)
a_entry.grid(row = 0, column = 1, sticky = E)
# 密码
p_label = Label(root, text = "密码:")
p_label.grid(row = 1, column = 0, sticky = W)
p_entry = Entry(root)
p_entry["show"] = "*" # 密码显示为 *
p_entry.grid(row = 1, column = 1, sticky = E)print(f'用户名为:{a_label.get()}')

5. 文本域

text = Text(root, width = 50, height = 30)
text.pack()

6. 列表框

listbox = tk.Listbox(root)
listbox.insert(1, "Option 1")
listbox.insert(2, "Option 2")
listbox.pack()# 获取选中项
selected = listbox.get(listbox.curselection())

7. 复选框

var = tk.IntVar()
checkbutton = tk.Checkbutton(root, text="Check Me", variable=var)
checkbutton.pack()# 获取状态
status = var.get()  # 1 if checked, otherwise 0

8. 单选按钮

var = tk.StringVar(value="Option 1")
radiobutton1 = tk.Radiobutton(root, text="Option 1", variable=var, value="Option 1")
radiobutton2 = tk.Radiobutton(root, text="Option 2", variable=var, value="Option 2")
radiobutton1.pack()
radiobutton2.pack()# 获取选中项
selected = var.get()

9. 滑块

用于从范围中选择一个值。

scale = tk.Scale(root, from_=0, to=100, orient=tk.HORIZONTAL)
scale.pack()# 获取当前值
value = scale.get()

10. 滚动条

用于为其他小部件(如 Text、Listbox)提供滚动功能。

scrollbar = tk.Scrollbar(root)
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)text_with_scroll = tk.Text(root, yscrollcommand=scrollbar.set)
text_with_scroll.pack(side=tk.LEFT)
scrollbar.config(command=text_with_scroll.yview)

11. 菜单

menu = tk.Menu(root)
root.config(menu=menu)file_menu = tk.Menu(menu)
menu.add_cascade(label="File", menu=file_menu)
file_menu.add_command(label="New")
file_menu.add_command(label="Open")
file_menu.add_separator()
file_menu.add_command(label="Exit", command=root.quit)

12. 消息

用于显示多行不可编辑的文本,自动换行。

message = tk.Message(root, text="This is a message widget", width=200)
message.pack()

13. 画布

用于绘制图形、线条、矩形、椭圆等

canvas = tk.Canvas(root, width=200, height=100)
canvas.pack()# 绘制矩形
canvas.create_rectangle(50, 20, 150, 80, fill="blue")# 绘制椭圆
canvas.create_oval(50, 20, 150, 80, fill="red")

14. 进度条

progress = ttk.Progressbar(root, orient=tk.HORIZONTAL, length=200, mode='determinate')
progress.pack()
progress.start(10)  # 开始进度条

三、布局管理

tkinter的布局分为三种:

  • pack 布局:它⾮常简单,我们不⽤做过多的设置,直接使⽤⼀个 pack 函数就可以
  • grid 布局:grid 可以理解为⽹格或表格,它可以把界⾯设置为⼏⾏⼏列的⽹格,相对位置不改变
  • place 布局:使⽤固定的位置坐标来布局

1. pack 布局

使⽤ pack 函数的时候,默认先使⽤的放到上⾯,然后依次向下排,它会给我们的组件⼀个⾃认为合适的位置和⼤⼩。
pack 函数也可以接受⼏个参数:

  • side 参数指定了它停 靠在哪个⽅向,可以为 LEFT,TOP,RIGHT,BOTTOM,分别代表 左,上,右,下
  • fill 参数可以是 X,Y,BOTH 和 NONE,即在⽔平⽅向填充,竖直⽅向填充,⽔平和竖直⽅向填充和不填充。
  • expand 参数可以是 YES 和 NO,它的 anchor 参数可 以是 N,E,S,W(这⾥的 NESW 分别表示北东南⻄,这⾥分别 表示上右下左)以及他们的组合或者是CENTER(表示中间)。
  • ipadxipady:内边距的x方向和y方向
  • padxpady:外边距的x方向和y方向

2. grid 布局

使⽤ grid 布局的时候,我们使⽤ grid 函数,在⾥⾯指 定两个参数,⽤ row 表示⾏,⽤ column 表示列,注意的是 row 和 column 的编号都从 0 开始。支持以下参数:

  • row:所在行
  • column:所在列
  • sticky:它可以⽤ N,S,W,E 表示 上,下,左,右 , 它决定了这个组件是从哪个⽅向开始的。
  • ipadxipady:内边距的x方向和y方向
  • padxpady:外边距的x方向和y方向
  • rowspan:表示跨越的行数
  • columnspan:表示跨越的列数
from tkinter import *
py = Tk()
Label(py, text = "账号:").grid(row = 0, sticky = W)
Entry(py).grid(row = 0, column = 1, sticky = E)
Label(py, text = "密码:").grid(row = 1, sticky = W)
Entry(py).grid(row = 1, column = 1, sticky = E)
Button(py, text = "登录").grid(row = 2, column = 1, sticky = E)
py.mainloop()

在这里插入图片描述

3. place 布局

它使⽤ place 函数,它分为 绝对布局 和 相对布局 ,绝对布局使⽤ x 和 y 参数,相对布局使⽤ relx,rely, relheight 和 relwidth 参数。

4. 总结

  • place 不推荐使⽤,pack 和 grid 布局更常⽤⼀些
  • 如果布局相对简单,建议使⽤pack
  • 如果布局相对复杂,建议使用grid
  • pack 和 grid 不能同时使用

四、事件

我们的很多操作,⽐如我们点击了⼀下⿏标,这就是⼀个事件,⽽操作系统会根据我们的相应的事件产⽣相应的消息,操作系统把消息传递给我们的应⽤程序,然后我们的应⽤程序根据操作系统传⼊的数据执⾏相应的命令。
事件是我们触发的,消息是操作系统根据我们的事件产⽣的,我们通常对于“消息”并不多关注,我们重视的是 “事件”。

1. 常用事件

  • <Button-1>: 表示⿏标左键单击
  • <Button-2>: 表示⿏标中键单击
  • <Button-3>: 表示⿏标右键单击
  • <KeyPress-A>:表示 A 键被按下,其中的 A 可以换成其他的键位
  • <Control-V>:表示按下的是 Ctrl 和 V 键,V 可以换成其他键位
  • <F1>:表示按下的是 F1 键,对于 Fn 系列的改变数字即可

2. 事件绑定

以下代码可实现标签模拟按钮的操作

n = Label(py, text = "我可不是真Button哟~")
n.bind("<Button-1>", myLabel)
n.pack()

3. bind 函数

  • bind():第一个参数为事件,第二个参数为回调函数名,用于绑定指定控件
  • bind_all():它的参数类型和 bind ⼀样,它通常⽤于全局的快捷键,⽐如 F1 通常 是⽤来打开帮助⽂档
  • bind_class():它接受三个参数, 第⼀个参数是类名,第⼆个参数是事件类型,第三个参数 是相应的操作
  • unbind():解除绑定事件
# 绑定了所有的输⼊框的 Ctrl+V 表示粘贴
w.bind_class('Entry','<Control-V>', my_paste)

五、常见案例

http://www.hkea.cn/news/881295/

相关文章:

  • 北京网站制作17页和业务多一样的平台
  • 无锡市住房城乡建设委网站简单网页设计模板html
  • 武汉市大型的网站制作公司网站ip查询
  • 做仪表行业推广有哪些网站电商网站设计
  • 动静分离网站架构百度售后客服电话24小时
  • 做汽车配件生意的网站佛山seo关键词排名
  • 创意建站推荐百度做广告多少钱一天
  • 巴中网站建设公司百度seo怎么做网站内容优化
  • 查网站备案名称上海网络营销seo
  • 人是用什么做的视频网站网络营销方案设计毕业设计
  • 建设网站考虑因素关键词优化是怎么弄的
  • 陕西营销型网站建设推广普通话的内容简短
  • 做配电箱的专门网站百度指数属于行业趋势及人群
  • 学做网站的网站重庆seo整站优化报价
  • 保定网站设计概述seo推广软件排名
  • 查pv uv的网站网络营销推广服务
  • 怎样让客户做网站优化 保证排名
  • 企业营销型网站做的好网络营销的有哪些特点
  • 网站开发 合同兰州快速seo整站优化招商
  • 网站开发技术现状深圳网络营销推广培训
  • 知名网络公司有哪些河北网站seo
  • 学做网站多少钱关键词难易度分析
  • 传奇如何做网站网站建设策划书案例
  • 龙岗 网站建设深圳信科最好用的搜索神器
  • 动态网站开发日志重庆seo整站优化报价
  • 魔站网站建设微信公众号运营推广方案
  • 好的网站建设公司营销推广外包公司
  • 教育机构做网站素材长尾关键词爱站
  • 做网站选什么系统企业网站seo推广
  • 山东省南水北调建设管理局网站腾讯网qq网站