14

I am writing a program to assist with a trivial part of my job that can be automated. My purpose here is to:

  1. Copy and paste a chunk of plain text into a Tkinter text widget

  2. Use that pasted chunk of text as the value of a variable so that the variable can have certain characters pulled and returned down the line.

I have a functioning little bit of code. For example, here is my text widget and the lines of code I use to get and print its contents:

textBox = Text(root)

textBox.focus_set()

def get_input():
    print textBox.get(1.0, 'end-1c')

Then I use a button that uses the command get_input. It works when it comes to printing the contents of the widget.

Now that I know how to properly call on the contents and 'get' them, I would like to learn how I can assign those contents (a string) to the value of a variable.

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Jaiden DeChon
  • 353
  • 1
  • 3
  • 13

2 Answers2

22

I think what you want is this. It will delete all the text and then insert a variable.

def set_input(value):
    text.delete(1.0, "END")
    text.insert("END", value)

It is Python 2.x only. Python 3 requires that "END" be END from the Tk namespace.

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
VeryAwkwardCake
  • 339
  • 1
  • 3
  • 11
4
def set_value():
    text.insert("end-1c", value)
Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Dave cool
  • 49
  • 1
  • 2
  • 3
    OK, so it's a useful answer. However, it's the normal 'style' on Stack Overflow to offer an explanation with your answer - even if this is very brief. – Adrian Mole Sep 25 '19 at 13:11