Tkinter Bold Text

Guilherme Polo ggpolo at
Thu Sep 18 19:15:48 CEST 2008

On Thu, Sep 18, 2008 at 1:06 PM, April Lekin <lekin2 at> wrote:
> Is there any way to highlight, bold or change the color of one word in a
> variable to be displayed on a Tkinter GUI?


> Like:
> material = "Plastic"
> introVal = "This report describes the construction of the %s." % (material)

You could separate them in two labels (if you are using labels), or
apply a different tag if you are using a Text widget.

> this is what I want:
> This report describes the construction of the Plastic.
> Plastic is Bold or Blue or Green

Changing the color is easier, you only change the foreground option.
Changing to bold may not work for you, because depending on your Tk
version and platform it will already be bold, so you won't notice
anything. There is also a "catch" in changing text to bold, if you
only set the text option of your Label to "-weight bold" it will
probably get you a bold text, but with a different font than the one
being used by other Labels.

Now, something you could use as a base:

import Tkinter
import tkFont

root = Tkinter.Tk()

otherpart = Tkinter.Label(text="some text here")
special = Tkinter.Label(text="special", foreground='blue')

f = tkFont.Font(font=otherpart['font'])
f['weight'] = 'bold'
f['underline'] = True

special['font'] =


> Thanks
> --

-- Guilherme H. Polo Goncalves

More information about the Python-list mailing list