【Python_GUI】thinker布局管理——pack()方法

pack()方法是比较常用的布局组件之一:其语法如下:

widget.pack(options)

其常用的参数及含义如下:

参数 含义
side 设置组件水平展示或垂直展示
padx 设置组件距离窗口的水平距离
pady 设置组件距离窗口的垂直距离
ipadx 设置组件内的文字距离组件边界的水平距离
ipady 设置组件内的文字距离组件边界的垂直距离
fill 设置组件填充所在的空白空间的方式
expand 设置组件是否完全填充其余空间
anchor 设置组件在窗口的位置
before 设置该组件应该位于指定组件的前面
after 设置该组件应该位于指定组件的后面

设置窗口中的三行文字,从左向右依次排列:

from tkinter import *

win=Tk()
#标题
win.title('窗口')
#窗口大
好的,以下是一个简单的思考者界面学生管理系统Python代码示例: ```python import tkinter as tk class Student: def __init__(self, name, grade): self.name = name self.grade = grade class StudentManagementSystem: def __init__(self): self.students = [] def add_student(self, name, grade): student = Student(name, grade) self.students.append(student) def remove_student(self, student): self.students.remove(student) def get_student_by_name(self, name): for student in self.students: if student.name == name: return student def get_all_students(self): return self.students class App: def __init__(self): self.window = tk.Tk() self.window.title("学生管理系统") self.system = StudentManagementSystem() self.name_label = tk.Label(self.window, text="姓名:") self.name_label.pack() self.name_entry = tk.Entry(self.window) self.name_entry.pack() self.grade_label = tk.Label(self.window, text="年级:") self.grade_label.pack() self.grade_entry = tk.Entry(self.window) self.grade_entry.pack() self.add_button = tk.Button(self.window, text="添加学生", command=self.add_student) self.add_button.pack() self.remove_button = tk.Button(self.window, text="删除学生", command=self.remove_student) self.remove_button.pack() self.search_button = tk.Button(self.window, text="搜索学生", command=self.search_student) self.search_button.pack() self.show_all_button = tk.Button(self.window, text="显示所有学生", command=self.show_all_students) self.show_all_button.pack() self.result_label = tk.Label(self.window, text="") self.result_label.pack() def add_student(self): name = self.name_entry.get() grade = self.grade_entry.get() self.system.add_student(name, grade) def remove_student(self): name = self.name_entry.get() student = self.system.get_student_by_name(name) if student: self.system.remove_student(student) def search_student(self): name = self.name_entry.get() student = self.system.get_student_by_name(name) if student: self.result_label.config(text="姓名:{} 年级:{}".format(student.name, student.grade)) else: self.result_label.config(text="没有找到该学生") def show_all_students(self): students = self.system.get_all_students() if students: result = "" for student in students: result += "姓名:{} 年级:{}\n".format(student.name, student.grade) self.result_label.config(text=result) else: self.result_label.config(text="没有学生") def run(self): self.window.mainloop() if __name__ == "__main__": app = App() app.run() ``` 这个简单的学生管理系统使用了Tkinter库创建了一个简单的GUI界面,可以添加、删除、搜索和显示所有学生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值