Название: TextEdit Отправлено: ru от Ноябрь 28, 2007, 19:03 дан набор цифр - 001, например
можно ли при их считывании заменять их на удаление элемента, например то бишь заменять цыфры , например команду клавиатуры backspace чтобы при считывании этих цыфр ужалялась предыдущая буква, либо делалось какое нить другое действие) добиться перемещения курсора мне удалось. таким макаром: textEdit->moveCursor(QTextCursor::Left). Название: Re: TextEdit Отправлено: pastor от Ноябрь 28, 2007, 19:43 Если я правильно понял, то дан набор кодов клавиш, и при их считывании нужно эмулировать нажатие этих клавиш.
Если нет, то выражаете мысли яснее, чтобы ненадо было догадоваться, что имееться ввиду. зы: Задача описана просто отвратительно! Название: Re: TextEdit Отправлено: ru от Ноябрь 28, 2007, 19:48 хорошо, попробую исправить постановку задачи)
дан набор кодов клавиш, и правильно, при их счититывании надо эмулировать их нажатие используется QTextEdit. Вопрос, как эмулировать клавиши типа backspace, del, PageUp, Home, End... Название: Re: TextEdit Отправлено: Dodge от Ноябрь 28, 2007, 19:56 хорошо, попробую исправить постановку задачи) Возможно поможет qt'шный хайлайтер, он подсвечивать умеет, но я думаю что и евенты на него повесить можно... в экзамплах есть.дан набор кодов клавиш, и правильно, при их счититывании надо эмулировать их нажатие используется QTextEdit. Вопрос, как эмулировать клавиши типа backspace, del, PageUp, Home, End... + есть комплитер, тож, при срабатывании комплитера можно ввыполнять какойто код Название: Re: TextEdit Отправлено: pastor от Ноябрь 28, 2007, 20:22 хорошо, попробую исправить постановку задачи) дан набор кодов клавиш, и правильно, при их счититывании надо эмулировать их нажатие используется QTextEdit. Вопрос, как эмулировать клавиши типа backspace, del, PageUp, Home, End... QKeyEvent вам в помощь ))). В конструктор передаеться модификатор, код клавиши и другие параметры (если они нужны) Также см. void QCoreApplication::postEvent ( QObject * receiver, QEvent * event ) bool QCoreApplication::sendEvent ( QObject * receiver, QEvent * event ) Одним из этих методов можно будет послать объект QKeyEvent нужному виджету ЗЫ: Учтите, что кода клавиш в Qt свои, и не совпадают с виртуальными кодами! Название: Re: TextEdit Отправлено: ru от Ноябрь 30, 2007, 15:56 Цитировать QKeyEvent вам в помощь ))). В конструктор передаеться модификатор, код клавиши и другие параметры (если они нужны) а можете привести пример? Название: Re: TextEdit Отправлено: pastor от Ноябрь 30, 2007, 16:19 Например так, эмитируем нажатие клавиши Space:
Код: QKeyEvent event(QEvent::KeyPress, Qt::Key_Space, Qt::NoModifier); Название: Re: TextEdit Отправлено: ru от Ноябрь 30, 2007, 16:25 спасибо
все получилось Название: Re: TextEdit Отправлено: ru от Ноябрь 30, 2007, 17:44 нда... не понимаю
после вот такого кода : Код: case 74: Код: 1>.\text.cpp(1068) : error C2360: initialization of 'event' is skipped by 'case' label подскажите, что ента такое, и с чем его едят? Название: Re: TextEdit Отправлено: Swappp от Ноябрь 30, 2007, 17:53 case не создает блок, как например if. Соответственно у тебя где то ранее уже объявлена переменная event (скорее всего строка 816).
Название: Re: TextEdit Отправлено: ru от Ноябрь 30, 2007, 18:00 при обявлении другой переменной ошибка не исчезает...
в общем пока что не понимаю, как её исправить Название: Re: TextEdit Отправлено: Swappp от Ноябрь 30, 2007, 18:09 Как вариант, возьми код после case в фигурные скобки, т.е.:
Код: case 74: Название: Re: TextEdit Отправлено: ru от Ноябрь 30, 2007, 18:13 спасибо)))
додумался до этого на 1 минуту раньше - я ещё не безнадежен)) сработало Название: Re: TextEdit Отправлено: ru от Ноябрь 30, 2007, 19:03 млин...все прекрасно, но только при таком отображении :
Код: textEdit->insertHtml("<br>"); а вот при таком - Код: { на экран ничего не выводится и ничего не происходит.... |