python内置模块tk的# TKinter QQ界面实战 - 第二篇

187 阅读2分钟

欢迎来到 TKinter 实战教程系列的 QQ 界面实战教程第二篇。在这个系列中,我们正在创建一个简化版本的 QQ 聊天界面。在第二篇中,我们将添加发送消息的功能和一些样式。

步骤 1: 导入 TKinter 库

首先,确保导入 TKinter 库。

import tkinter as tk

步骤 2: 创建主窗口

创建一个主窗口(root窗口),这将是我们的 QQ 界面的主要窗口。

root = tk.Tk()

步骤 3: 添加窗口标题

为主窗口添加一个标题。

root.title("QQ 聊天界面")

步骤 4: 创建聊天框

现在,我们将在主窗口中创建一个聊天框,用于显示聊天记录。我们还将为聊天框添加一个滚动条。

chat_box = tk.Text(root, width=40, height=20)
chat_box.pack()

scrollbar = tk.Scrollbar(root, command=chat_box.yview)
scrollbar.pack(side="right", fill="y")

chat_box.config(yscrollcommand=scrollbar.set)

步骤 5: 创建输入框

让我们在主窗口中创建一个输入框,用于输入聊天消息。

input_box = tk.Entry(root, width=40)
input_box.pack()

步骤 6: 创建发送按钮

现在,我们将在主窗口中创建一个发送按钮,用于发送消息。

def send_message():
    message = input_box.get()
    if message:
        chat_box.insert("end", f"You: {message}\n")
        input_box.delete(0, "end")

send_button = tk.Button(root, text="发送", command=send_message)
send_button.pack()

在上面的代码中,我们创建了一个名为 send_message 的函数,该函数将在点击发送按钮时调用。在 send_message 函数中,我们获取输入框中的消息,将其添加到聊天框中,并清空输入框。

步骤 7: 运行主循环

最后,运行主循环以启动 QQ 界面。

root.mainloop()

完整示例代码

下面是完整的示例代码,创建了一个简化版本的 QQ 聊天界面,包括聊天框、输入框和发送按钮。

import tkinter as tk

def send_message():
    message = input_box.get()
    if message:
        chat_box.insert("end", f"You: {message}\n")
        input_box.delete(0, "end")

root = tk.Tk()
root.title("QQ 聊天界面")

chat_box = tk.Text(root, width=40, height=20)
chat_box.pack()

scrollbar = tk.Scrollbar(root, command=chat_box.yview)
scrollbar.pack(side="right", fill="y")

chat_box.config(yscrollcommand=scrollbar.set)

input_box = tk.Entry(root, width=40)
input_box.pack()

send_button = tk.Button(root, text="发送", command=send_message)
send_button.pack()

root.mainloop()

运行这个代码,您将看到一个带有聊天框、输入框和发送按钮的窗口。您可以输入消息并点击发送按钮,消息将显示在聊天框中。这是 QQ 聊天界面的第二步,我们将在后续教程中继续改进它。