给上边代码加上可视化,可操作的窗口
时间: 2023-11-15 12:05:44 浏览: 33
要实现可视化和可操作的窗口,需要使用GUI库。在Python中,常用的GUI库有Tkinter、PyQt、wxPython等。这里我们以Tkinter为例,给上面的代码添加一个简单的GUI界面。
```python
import tkinter as tk
from ChitGPT import ChitGPT
class ChatbotGUI:
def __init__(self):
self.chatbot = ChitGPT()
self.window = tk.Tk()
self.window.title('Chatbot')
self.input_label = tk.Label(self.window, text='User:')
self.input_label.grid(row=0, column=0, sticky='w')
self.output_label = tk.Label(self.window, text='Chatbot:')
self.output_label.grid(row=1, column=0, sticky='w')
self.input_text = tk.Text(self.window, height=1)
self.input_text.grid(row=0, column=1, sticky='we')
self.output_text = tk.Text(self.window, height=10)
self.output_text.grid(row=1, column=1, sticky='we')
self.send_button = tk.Button(self.window, text='Send', command=self.send_message)
self.send_button.grid(row=0, column=2, rowspan=2)
self.window.mainloop()
def send_message(self):
user_input = self.input_text.get('1.0', 'end-1c')
response = self.chatbot.generate_response(user_input)
self.input_text.delete('1.0', tk.END)
self.output_text.insert(tk.END, f'User: {user_input}\n')
self.output_text.insert(tk.END, f'Chatbot: {response}\n\n')
if __name__ == '__main__':
ChatbotGUI()
```
通过调用ChitGPT类,我们创建了一个简单的聊天机器人。然后使用Tkinter库创建了一个窗口,包括一个用户输入框、一个聊天机器人回复框和一个发送按钮。当用户点击发送按钮时,程序会读取用户输入,调用ChitGPT类生成聊天机器人的回复,并将用户输入和聊天机器人的回复显示在聊天窗口中。