制作Discordbot GUI

时间:2019-08-29 13:26:19

标签: python python-3.x tkinter discord discord.py

我正在尝试为不和谐的bot创建gui(使用Tkinter),但是问题是当我单击“启动bot”按钮时,该bot实际上启动了,但是整个程序崩溃了。我该怎么解决?

from tkinter import *
from discord.ext import commands

client = commands.Bot(command_prefix='.')

window = Tk()

window.title("Bot")

window.geometry('350x200')


def clicked():
    @client.event
    async def on_ready():
        print("ready")
    client.run('')


btn = Button(window,text='Start bot', command=clicked)


btn.grid(column=1,row=1)

window.mainloop()

2 个答案:

答案 0 :(得分:0)

您应该看一下Threads,因为它可以让您独立运行Discord和Tkinter窗口。这是必需的,因为client.run()处于阻塞状态,因此在运行该函数时,它将不会在您的代码中执行任何后续操作,因此将不会运行Tkinter主循环以允许GUI更新。

答案 1 :(得分:0)

您遇到与我相同的问题!

打na后(我已经一个星期没睡了),我发现您需要关闭window.destroy()窗口并用所有按钮重新打开

window = Tk()
btn.pack()