I\'m new to python, poking around and I noticed this:
from tkinter import *
def test1():
root = Tk()
txtTest1 = Entry(root).place(x=10, y=10)
pri
You are creating an object (txtTest1
) and then calling a method on that object (place
). Because you code that as one expression, the result of the final method is what gets returned. place
returns None
, so txtTest1
gets set to None
If you want to save a reference to a widget you need to separate the creation from the layout (which is a Good Thing To Do anyway...)
txtTest1 = Entry(root)
txtTest1.place(x=10, y=10)
The place
method of Entry
doesn't return a value. It acts in-place on an existing Entry variable.
because Entry.place() returns None
in a more C-like language you could do:
(txtTest1 = Entry(root)).place(x=10, y=10)
and txtText1 would be the Entry object, but that syntax is illegal in Python.