Hi!I have a problem and i think you can help me!(Sorry my english.I learn just one year)
Thats part of my program...

okno=Tk()
text=Text()
text.pack()
def find():
    print "I need help here"
menubar = Menu(okno)
editmenu = Menu(menubar, tearoff=0,bd=4)
editmenu.add_command(label="Find", command=find)
menubar.add_cascade(label="Edit", menu=editmenu)
okno.config(menu=menubar)

i need add to definiction find correcet function.I need something like "find" in python GUI.If you press button find,you will see new window.In the window must be an Entry and Button.If you write sometzhing in entry and then press button will be called function:if is entry.get in text,selcet it and set cursor on them.if there is moore, they will by show by oressing button.I have tryied program from code snipet find, but i didnt solved it.
Thanks.

hi,

The following code is the find function part of your code but with part of the solution
it now prints the index (location) of the begining of a string or letter but i havn't a clue how to highlight text.

def find():
    findStr = tkSimpleDialog.askstring("Find", "Find:") # Prompts user to enter a string, if nothing is entered, function returns None
    if findStr: # Test to see if the function returned a string or None
        print findStr
        start = 1.0
        while 1:
            position = text.search(findStr, start, stopindex=END)
            if not position:
                break
            print "string was found at ", position
            start = position + "+1c"
    else:
        print 'nothing was entered'

the text widget uses index's, 1.0 would mean the first row (1) and the first column (0)
just picture the text widget as a grid, with one character in each square

so when you enter a string to search, it returns either nothing (if nothing was found) or the index for the first character in the string.

at the end of the while loop, the "+1c" means +1 column.

www.pythonware.com has documentation for all of Tkinter

Thanks :lol: .But maybe can asnwer me somebody else.How to set cursor on some index?and what about select it? :eek:
I thanks to all! :p
Thats nice forum

This question has already been answered. Start a new discussion instead.