Выделенный текст в виджете Ruby Tk Text?

Кажется, я не могу найти, как получить текущий выделенный текст из текстового виджета в ruby. В Perl была функция ->getSelected, которой, похоже, нет в реализации ruby. Кроме того, выделенный текст должен быть помечен тегом «sel», но всякий раз, когда я пытаюсь использовать его с get("sel"), он говорит, что недопустимый текстовый индекс. Однако должен быть способ получить выделенный текст...

Также еще вопрос, по умолчанию текстовый виджет в perl имеет всплывающее меню со всякими функциями вроде поиска, копирования/вставки. Было ли это просто надстройкой Perl?


person Eric Seifert    schedule 29.12.2011    source источник


Ответы (2)


Да, всплывающее меню в Perl — это надстройка для Perl.

Что касается получения выделенного текста, вы правы в том, что выделенный текст имеет тег «sel», и вы используете его для получения выделенного текста. Чтобы получить выделенный текст, вы должны использовать индекс sel.first и sel.last, например:

get("sel.first", "sel.last")

Действительно хороший ресурс по Tk, который охватывает использование в Tcl, Python, Ruby и Perl, см. tkdocs.com. Текстовый виджет задокументирован на этом сайте в учебнике по тексту.

person Bryan Oakley    schedule 29.12.2011

Конечно, я, наконец, понял это сразу после публикации. Индекс "sel.first" и "sel.last". поэтому я использовал get("sel.first", "sel.last")

person Eric Seifert    schedule 29.12.2011