New submission from Peter Vex :
When you want to simply place a widget on a window and you also want to store
the reference for that widget in a variable you can't do that in one line,
which is really unpleasant, because when you create a new widget these things
are usually the first what you want to do with a widget and breaking it two
line is just making things more complicated.
For example, if you want to create 3 label, place it next to each other and
store their reference:
import tkinter as tk
root = tk.Tk()
# you can't do that:
# here the variables assigned to None, since grid() returns 'nothing'
label1 = tk.Label(root).grid(row=0, column=0)
label2 = tk.Label(root).grid(row=0, column=1)
label3 = tk.Label(root).grid(row=0, column=2)
# actually, you must do this:
label1 = tk.Label(root)
label1.grid(row=0, column=0)
label2 = tk.Label(root)
label2.grid(row=0, column=1)
label3 = tk.Label(root)
label3.grid(row=0, column=2)
--
components: Tkinter
messages: 18
nosy: Peter Vex
priority: normal
pull_requests: 10980
severity: normal
status: open
title: Place, Pack and Grid should return the widget
type: behavior
versions: Python 3.7
___
Python tracker
<https://bugs.python.org/issue35700>
___
___
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com