diff --git a/PySimpleGUI.py b/PySimpleGUI.py index a45a5325..76e66856 100644 --- a/PySimpleGUI.py +++ b/PySimpleGUI.py @@ -1149,12 +1149,16 @@ class Multiline(Element): if autoscroll is not None: self.Autoscroll = autoscroll if value is not None: + if self.Disabled: + self.TKText.configure(state='normal') try: if not append: self.TKText.delete('1.0', tk.END) self.TKText.insert(tk.END, value) except: pass + if self.Disabled: + self.TKText.configure(state='disabled') self.DefaultText = value if self.Autoscroll: self.TKText.see(tk.END) @@ -5183,11 +5187,11 @@ def PackFormIntoFrame(form, containing_frame, toplevel_form): tktext_label = element.Widget = tk.Label(tk_row_frame, textvariable=stringvar, width=width, height=height, justify=justify, bd=border_depth, font=font) # Set wrap-length for text (in PIXELS) == PAIN IN THE ASS - wraplen = 0 - if not auto_size_text and height == 1: + wraplen = tktext_label.winfo_reqwidth() # width of widget in Pixels + if not auto_size_text and height == 1: # if just 1 line high, ensure no wrap happens wraplen = 0 - elif not auto_size_text: - wraplen = tktext_label.winfo_reqwidth() - 10 # width of widget in Pixels + # print(f'Text wraplen = {wraplen} wxh = {width} x {height}') + # print(f'Len = {len(display_text)} Text = {str(display_text)}') tktext_label.configure(anchor=anchor, wraplen=wraplen) # set wrap to width of widget if element.Relief is not None: tktext_label.configure(relief=element.Relief)