As a Python newbie I have a problem with the text widget.
Whenever I try to increase the font size of the text widget , the width and height of it changes too.
Here's the code:
from tkinter import *
from tkinter import font
root = Tk()
fontsize = 16
def increase_font():
global fontsize
fontsize += 2
textfont.config(size = fontsize)
textfont = font.Font(family = "consolas" , size = fontsize)
my_text = Text(root , width = 65 , height = 18 , font = textfont)
my_text.grid(row = 0 , column = 0)
my_text.insert(1.0 , "There is a problem")
my_button = Button(root , text = "Increase Font" , width = 13 , font = "arial 11" , command = increase_font)
my_button.grid(row = 1 , column = 0 , pady = 5)
mainloop()
However , this problem does not seem to occur when I:
1) Use tags in my program
2) Change the font of my text
For example:
def increase_font():
global fontsize
fontsize += 2
my_text.tag_add("increase_size" , 1.0 , END) # using tags
my_text.tag_config("increase_size" , font = f"consolas {fontsize}") # changing the font
# Problem does not occur
Or
def increase_font():
global fontsize
fontsize += 2
my_text.tag_add("increase_size", 1.0 , END) # using tags
temp_font = textfont.copy() # creating a new font
temp_font.config(size = fontsize)
my_text.tag_config("increase_size" , font=temp_font) # changing the font
# Problem does not occur
The thing is that I don't want to change the font of the text or create a new font , as it causes problems when I implement it on my original program. All I want is to set a fixed width and height to my text widget(and it should never change no matter what I do with it).
This problem really frustrates me a lot and It would be a great help if anyone could fix this problem.