в pygtk, как редактировать содержимое объекта Entry, который добавлен в MenuItem (во время выполнения) - PullRequest
0 голосов
/ 11 февраля 2011

Я хочу создать MenuItem, который Entry показывает для этого, чтобы пользователь мог ввести значение в виджет ввода.Эту процедуру легко реализовать, но после показа этой записи она не может получить курсор и пользователь не может ввести в нее текст, помогите мне сделать это, пожалуйста.я использовал pygtk 2.0.

#!/usr/bin/env python
import gtk

win = gtk.Window()
win.connect( "destroy", gtk.main_quit )

menubar = gtk.MenuBar()
popup = gtk.Menu()
root_menu = gtk.MenuItem("root")
menu_item = gtk.MenuItem()
field =  gtk.Entry()

win.add( menubar )
menubar.add( root_menu )
root_menu.set_submenu( popup )
popup.append( menu_item )
menu_item.add( field )

win.show_all()    
print field.get_can_focus(), field.get_editable()

gtk.main()

Ответы [ 3 ]

2 голосов
/ 07 декабря 2011

Здесь - сообщение о том, что то, что вы пытаетесь сделать, может быть включено в GTK 3.4;но я не знаю, где найти текущее состояние этого кода.

0 голосов
/ 21 августа 2018

Используя pygtk 2.0, я полагаю, вы хотите использовать:

field.set_text("Here is my text in gtk.Entry widget")

field.get_text() возвращает текст, который вы только что установили в gtk.Entry.

0 голосов
/ 11 февраля 2011

Вот отличный пример меню - просто скопируйте его и поставьте menubar_test.py, затем измените разрешения chmod 755 menubar_test.py

Надеюсь, это вам поможет!

...