|
|
|||||
Регистрация: Sep 2012
Сообщений: 28
|
Стиль пайп-курсора фокуса TextInput
Ребята, добрый день! У меня самая странная задача, которая только могла встретиться на моём пути флешерства, как мне кажется). Есть поле ввода текста TextInput. Но нужно каким-то чудесным образом сделать мигающий пайп (вертикальный слэш курсора фокуса) побольше/пошире. Ну то есть у меня текст сам здоровый, болдовый, но сам пайп настолько маленький и узкий, что его практически не было не видно, если б он не мигал. А игра на телефонах будет, там вообще будет беда и печаль. Очень просили что-то придумать, чтоб сделать его заметнее. Я вот сижу и потухаю... Реально ли это сделать вообще? Если да, ну или как закостылить, то буду рада любой помощи или совету, в какую сторону копать!
|
|
|||||
Регистрация: Jan 2013
Сообщений: 322
|
ненавижу мигающую каретку
|
|
|||||
Регистрация: Oct 2005
Сообщений: 157
|
import flash.text.TextField; import flash.text.TextFormat; import flash.text.TextFieldType; import flash.events.KeyboardEvent; import flash.geom.Rectangle; import flash.ui.Mouse; var t:TextField = new TextField(); t.text = "TEXT WITH WIDE CARET HACK :D"; t.x = t.y = 20; t.width = 500; t.height = 500; t.alwaysShowSelection = true; t.multiline = t.wordWrap = true; t.defaultTextFormat = new TextFormat('_sans',20); t.type = TextFieldType.INPUT; addChild(t); stage.focus = t; t.addEventListener(KeyboardEvent.KEY_DOWN,kd); var CARET:String = String.fromCharCode(1); function kd(e:KeyboardEvent):void { t.text = t.text.substr(0, t.length-1); t.text += CARET; } t.text += CARET; var selected = false; function addCaret(){ if(selected){ t.setSelection(t.length-1, t.length); t.selectable = true; }else{ t.setSelection(t.length,t.length); t.selectable = false; } selected = !selected; } setInterval(addCaret, 500);//caret blink time правда, если нужно сохранить функцию выделения текста то скрипт надо доработать. Добавлено через 3 минуты Но лучше найти фонт такой, чтобы в нём уже был символ каретка (прямоугольник?) и использовать его, то добавляя то убирая. еще можно какой-то элемент отрисовывать на место каретки, высчитывая координаты.
__________________
и где же смысл? Последний раз редактировалось vadja; 02.03.2015 в 18:31. |
|
|||||
Регистрация: Sep 2012
Сообщений: 28
|
vadja, спасибо!
Добавлено через 2 часа 10 минут И ещё одни вопросик - оказывается, что в моей задаче нельзя выделять текст, курсор всегда должен быть в конце текста, как такое можно проделать? |
Часовой пояс GMT +4, время: 14:28. |
|
« Предыдущая тема | Следующая тема » |
|
|