Fix for column crash due to keyboard feature, struggling with message box sizes and wrapping
This commit is contained in:
parent
945625b388
commit
3f64564ad2
|
@ -1351,9 +1351,12 @@ def BuildResultsForSubform(form, initialize_only, top_level_form):
|
||||||
AddToReturnList(form, value)
|
AddToReturnList(form, value)
|
||||||
AddToReturnDictionary(top_level_form, element, value)
|
AddToReturnDictionary(top_level_form, element, value)
|
||||||
|
|
||||||
|
# if this is a column, then will fail so need to wrap with tr
|
||||||
|
try:
|
||||||
if form.ReturnKeyboardEvents and form.LastKeyboardEvent is not None:
|
if form.ReturnKeyboardEvents and form.LastKeyboardEvent is not None:
|
||||||
button_pressed_text = form.LastKeyboardEvent
|
button_pressed_text = form.LastKeyboardEvent
|
||||||
form.LastKeyboardEvent = None
|
form.LastKeyboardEvent = None
|
||||||
|
except: pass
|
||||||
|
|
||||||
try:
|
try:
|
||||||
form.ReturnValuesDictionary.pop(None, None) # clean up dictionary include None was included
|
form.ReturnValuesDictionary.pop(None, None) # clean up dictionary include None was included
|
||||||
|
@ -1455,12 +1458,13 @@ def PackFormIntoFrame(form, containing_frame, toplevel_form):
|
||||||
# tktext_label = tk.Label(tk_row_frame,anchor=tk.NW, text=display_text, width=width, height=height, justify=tk.LEFT, bd=border_depth)
|
# tktext_label = tk.Label(tk_row_frame,anchor=tk.NW, text=display_text, width=width, height=height, justify=tk.LEFT, bd=border_depth)
|
||||||
# Set wrap-length for text (in PIXELS) == PAIN IN THE ASS
|
# Set wrap-length for text (in PIXELS) == PAIN IN THE ASS
|
||||||
wraplen = tktext_label.winfo_reqwidth() # width of widget in Pixels
|
wraplen = tktext_label.winfo_reqwidth() # width of widget in Pixels
|
||||||
tktext_label.configure(anchor=anchor, font=font, wraplen=wraplen+10) # set wrap to width of widget
|
tktext_label.configure(anchor=anchor, font=font, wraplen=0) # set wrap to width of widget
|
||||||
if element.BackgroundColor is not None:
|
if element.BackgroundColor is not None:
|
||||||
tktext_label.configure(background=element.BackgroundColor)
|
tktext_label.configure(background=element.BackgroundColor)
|
||||||
if element.TextColor != COLOR_SYSTEM_DEFAULT and element.TextColor is not None:
|
if element.TextColor != COLOR_SYSTEM_DEFAULT and element.TextColor is not None:
|
||||||
tktext_label.configure(fg=element.TextColor)
|
tktext_label.configure(fg=element.TextColor)
|
||||||
tktext_label.pack(side=tk.LEFT)
|
tktext_label.pack(side=tk.LEFT)
|
||||||
|
# print(f'Text element placed w = {width}, h = {height}, wrap = {wraplen}')
|
||||||
# ------------------------- BUTTON element ------------------------- #
|
# ------------------------- BUTTON element ------------------------- #
|
||||||
elif element_type == ELEM_TYPE_BUTTON:
|
elif element_type == ELEM_TYPE_BUTTON:
|
||||||
element.Location = (row_num, col_num)
|
element.Location = (row_num, col_num)
|
||||||
|
@ -1921,7 +1925,7 @@ def MsgBox(*args, button_color=None, button_type=MSG_BOX_OK, auto_close=False, a
|
||||||
max_line_total = max(max_line_total, width_used)
|
max_line_total = max(max_line_total, width_used)
|
||||||
# height = _GetNumLinesNeeded(message, width_used)
|
# height = _GetNumLinesNeeded(message, width_used)
|
||||||
height = message_wrapped_lines
|
height = message_wrapped_lines
|
||||||
form.AddRow(Text(message_wrapped, auto_size_text=True))
|
form.AddRow(Text(message_wrapped, auto_size_text=True, size=(width_used, height)))
|
||||||
total_lines += height
|
total_lines += height
|
||||||
|
|
||||||
pad = max_line_total-15 if max_line_total > 15 else 1
|
pad = max_line_total-15 if max_line_total > 15 else 1
|
||||||
|
@ -2665,7 +2669,7 @@ def ObjToString(obj, extra=' '):
|
||||||
def main():
|
def main():
|
||||||
with FlexForm('Demo form..') as form:
|
with FlexForm('Demo form..') as form:
|
||||||
form_rows = [[Text('You are running the PySimpleGUI.py file itself')],
|
form_rows = [[Text('You are running the PySimpleGUI.py file itself')],
|
||||||
[Text('You should be importing it rather than running it\n')],
|
[Text('You should be importing it rather than running it', size=(50,2))],
|
||||||
[Text('Here is your sample input form....')],
|
[Text('Here is your sample input form....')],
|
||||||
[Text('Source Folder', size=(15, 1), justification='right'), InputText('Source', focus=True),FolderBrowse()],
|
[Text('Source Folder', size=(15, 1), justification='right'), InputText('Source', focus=True),FolderBrowse()],
|
||||||
[Text('Destination Folder', size=(15, 1), justification='right'), InputText('Dest'), FolderBrowse()],
|
[Text('Destination Folder', size=(15, 1), justification='right'), InputText('Dest'), FolderBrowse()],
|
||||||
|
|
Loading…
Reference in New Issue