![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Swatch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
Добрый день.
Помогите, пожалуйста, надо сделать UnDo(Ctrl+Z) для текстовых компонентов на форме. то есть на форме лежит панелька с кард лайаутом в котором 28 карт. На кождой есть текстовые компоненты. Надо, чтобы при вводе текста в текстовый компонент была возможность, нажав в меню UnDo, отменить ввод (до 1 символа). ТО есть такая же реализация, как в Ворде и др. текстовых редакторах. Кто-нибудь знает, КАК это сделать??? |
|||
|
||||
| goodday1941 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 709 Регистрация: 16.7.2006 Где: Украина, Киев Репутация: 8 Всего: 9 |
вешай кей листенер на текстовый компонент, при каждом нажатии клавищи вноси в LinkedList<String> текст с текстового компонента (текстовый компонент.getText()) при нажатии на кнопку undo берешь предпоследнюю запись с коллекции и делаешь текстовый компонент.setText(предпоследняя строка), потом удаляешь ее и последнюю запись. ну и тд...
впринцпе можно извратиться и еще redo написать ПС.. писал первое что в голову пришло Это сообщение отредактировал(а) goodday1941 - 9.8.2007, 16:34 -------------------- SCJP 6 |
|||
|
||||
| fixxer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 14.9.2006 Где: Саратов, Россия Репутация: 15 Всего: 27 |
Здесь почитайте
еще можно почитать пакет javax.swing.undo Это сообщение отредактировал(а) fixxer - 9.8.2007, 16:48 -------------------- ![]() |
|||
|
||||
| ilia1234 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 4.6.2007 Репутация: нет Всего: нет |
есть такой вот примерчик элементарного текстового редактора. По-моему, все что тебе нужно тут есть.
|
|||
|
||||
| Swatch |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
хммм... спасибо за пример. правда, что-то не доконца разобралась. у меня операция unDo должна выполняться из меню для компонентов, которые лежал на формах, которые, в свою очередь, находяться в кардлайауте. Чтобы найти компонент, который редактируется, я при приобретении им фокуса передаю его в глоб переменную component.
написала unDo так.:
а затем на глав. форме для менюшного действия unDo:
там же, на глав. форме объявлены :
Дело в том, что у меня сейчас вообще ничего не запускается. Пишет: D:\Work\...\forms\NewPropertyforPurchase.java:375: cannot find symbol symbol: method getParent() ((frmMain)this.getParent().getParent().getParent().getParent().getParent().getParent().getParent().getParent().getParent()).undoact.addEdit(e.getEdit()); Кто-ниюудь, подскажите, пожалуйста, что я сделала не так и почему он не находит метод getParent()??? ведь до этого он прекрасно все находил... |
||||||
|
|||||||
| AlexeyVorotnikov |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 18.6.2007 Где: Москва Репутация: 3 Всего: 18 |
Опупеть! Где-то Вы в этих getParent() промахнулись. -------------------- RTFM! Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification |
|||
|
||||
| Swatch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 453 Регистрация: 2.7.2007 Репутация: нет Всего: 1 |
В том-то и дело, что, допустим, вот эта строчка
прекрасно работает... |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |