c语言编程笔录

首页 >   > 笔记大全

笔记大全

Python应用GUI界面设计 tkinterplace

更新时间:2023-11-14

什么是tkinter?

tkinter是Python的内置模块之一,它是Python中的GUI(图形用户界面)编程工具包之一,允许开发者使用Python创建应用程序的视觉元素,如窗口、标签、按钮、滚动条等。

以下是一个简单的tkinter窗口示例:

import tkinter as tk

root = tk.Tk()

root.mainloop()

创建GUI应用程序

下面的代码演示了如何创建一个GUI桌面应用程序,并显示“Hello, world!”消息。

import tkinter as tk

class Application(tk.Frame):
    def __init__(self, master=None):
        super().__init__(master)
        self.master = master
        self.pack()
        self.create_widgets()

    def create_widgets(self):
        self.hello_world = tk.Button(self)
        self.hello_world["text"] = "Hello, world!"
        self.hello_world["command"] = self.say_hi
        self.hello_world.pack(side="top")

        self.quit = tk.Button(self, text="QUIT", fg="red",
                              command=self.master.destroy)
        self.quit.pack(side="bottom")

    def say_hi(self):
        print("Hi there!")

root = tk.Tk()
app = Application(master=root)
app.mainloop()

添加图像到应用程序界面

把一个图片加载到tkinter窗口中,可以使用PhotoImage类。如下代码示例,将创建一个窗口,并在窗口中加载一个名为“example.png”的图像文件:

import tkinter as tk

root = tk.Tk()

image = tk.PhotoImage(file="example.png")
label = tk.Label(image=image)
label.pack()

root.mainloop()

窗口布局

下面的代码演示如何使用grid()方法进行Python tkinter窗口界面布局。

import tkinter as tk

root = tk.Tk()

label_1 = tk.Label(root, text="Label 1")
label_1.grid(row=0, column=0)

label_2 = tk.Label(root, text="Label 2")
label_2.grid(row=1, column=0)

button_1 = tk.Button(root, text="Button 1")
button_1.grid(row=0, column=1)

button_2 = tk.Button(root, text="Button 2")
button_2.grid(row=1, column=1)

root.mainloop()