O'Reilly logo

Tkinter GUI Programming by Example by David Love

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Using our LineNumbers class

Once again, we simply need to import the LineNumbers class at the top of our texteditor.py file:

from linenumbers import LineNumbers

With that taken care of, we just need to instantiate the class in our __init__ method. Since the code is already set up to apply our custom scrolling to an attribute named lne_numbers, let's delete all references to that attribute in __init__, except for the call to pack at the end, and replace them with this one line:

self.line_numbers = LineNumbers(self, self.text_area, bg="grey", fg="white", width=1)

This ensures that our custom scrolling and event bindings will still apply to this newly created class.

Give the editor another whirl and check out the new dynamic line numbers.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required