Я полагаю, ваш self.output
является текстовым виджетом. В настоящее время вы просто изменяете передний план всего текста в виджете, вызывая self.output.config(foreground=...)
.
Чтобы выделить цвета для другого текста, необходимо установить tag
для вставленного текста, а затем использовать tag_config
для настройки цветов каждого тега.
import tkinter as tk
root = tk.Tk()
text = tk.Text(root)
text.pack()
text.insert(tk.INSERT,"This is a red message\n","red")
text.insert(tk.INSERT,"This is a green message\n","green")
text.insert(tk.INSERT,"This is a blue message\n","blue")
text.tag_config("red", foreground="red")
text.tag_config("green", foreground="green", relief="sunken",borderwidth=2)
text.tag_config("blue", foreground="blue", underline=1)
root.mainloop()