Страница 1 из 2
Как вставить TAB в текстовое поле?
Добавлено: 24 Ноябрь 2015, 15:30
morkovin
C6.2 ABC
На форме текстовое поле. При попытке вставить табуляцию(TAB),ес-но, выполняется переход на след. поле. Как-то раньше не сталкивался с этим. Что делать?
Как вставить TAB в текстовое поле?
Добавлено: 24 Ноябрь 2015, 15:33
Игорь Столяров
Указать для поля ALERT(TabKey) и обработать нажатие клавиши TAB.
Ну и если не TAB, то должна быть какая-то кнопка выхода из поля ...
Как вставить TAB в текстовое поле?
Добавлено: 24 Ноябрь 2015, 16:44
kreator
Есть оператор Alias, изменяет keycode'ы (в принципе, используется для переназначения клавиш). Если TabKey на поле подменить, может само вставиться?
Как вставить TAB в текстовое поле?
Добавлено: 24 Ноябрь 2015, 17:00
kreator
Фигню, наверно, сморозил. Но Alias можно посмотреть.
Как вставить TAB в текстовое поле?
Добавлено: 24 Ноябрь 2015, 20:55
morkovin
Поместил на форму кнопку <InsTab>, на кнопку повесил код SETCLIPBOARD('<9>'). Нажимаю и в нужном месте делаю Ctrl-V
Как вставить TAB в текстовое поле?
Добавлено: 24 Ноябрь 2015, 21:39
Ал
morkovin писал(а):Поместил на форму кнопку <InsTab>, на кнопку повесил код SETCLIPBOARD('<9>'). Нажимаю и в нужном месте делаю Ctrl-V
Если я правильно понял, то получается "2х ходовка" ручками - возможно пройдет вариант "1 ходовки" - вставка ручками при наборе текста некоего условного символа, заведомо "ненужного" в тексте и при сохранении программно текст распарсить с заменой его на <9>?
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 2:03
Admin
Я бы предложил использовать не
Tab а
Ctrl+T. Ну и рассказать про этот хоткей юзеру.
Код: Выделить всё
PROGRAM
MAP
END
INCLUDE('KEYCODES.CLW')
Window WINDOW('TAB'),AT(,,245,182),FONT('Segoe UI',8,,),GRAY,DOUBLE
PROMPT('Press TAB or Ctrl+T in text box'),AT(24,9),USE(?Prompt1)
TEXT,AT(24,26,197,126),USE(?Text1),BOXED,ALRT(TabKey),ALRT(CtrlT)
BUTTON('Button 1'),AT(74,160,45,14),USE(?Button1)
BUTTON('Button 2'),AT(126,160,45,14),USE(?Button2)
END
CODE
OPEN(Window)
! demo
?Text1{PROP:Text} = '1234567890123456789'
?Text1{PROP:Selected} = 5
!
ACCEPT
CASE EVENT()
OF EVENT:Alertkey
CASE FIELD()
OF ?Text1
CASE KEYCODE()
OF CtrlT
OROF TabKey
S# = ?Text1{PROP:Selected}
?Text1{PROP:Text} = SUB(?Text1{PROP:Text},0,?Text1{PROP:Selected}-1) & '<9>' & SUB(?Text1{PROP:Text},?Text1{PROP:Selected},LEN(CLIP(?Text1{PROP:Text}))-?Text1{PROP:Selected}-1)
?Text1{PROP:Selected} = S#+1
END
END
END
END
CLOSE(Window)
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 9:46
Ал
Admin писал(а):Я бы предложил использовать не Tab а Ctrl+T. Ну и рассказать про этот хоткей юзеру.
+,
ну и в случае, если в текстовом поле вводится что-то достаточно "шаблонно" - добавить работу с наборами образцов/шаблонов, короче - "заготовок", где уже например стоит табуляция в нужных позициях и есть возможность вставить при наборе текста эти готовые заготовки и дополнить нужным текстом?
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 10:42
pansoft
Admin писал(а): Я бы предложил использовать не Tab а Ctrl+T. Ну и рассказать про этот хоткей юзеру.
Поле текст по умолчанию использует не Tab а Ctrl+T. Не чего писать не надо.
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 10:43
Admin
Ну и конечно же Courier - наше все!
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 10:44
Admin
pansoft писал(а): Поле текст по умолчанию использует не Tab а Ctrl+T. Не чего писать не надо.

с каких пор?
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 10:46
pansoft
Можно сказать, всю жизнь.
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 10:48
Admin
pansoft писал(а): Можно сказать, всю жизнь.
В какой вселенной? У меня такого нет. С6.3
P.S. Кстати у меня там в примере текста вставки Tab нужно подрихтовать. Косячит если несколько раз нажать подряд...
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 10:50
kreator
pansoft писал(а):Можно сказать, всю жизнь.
В C10 на автомате не работает. Что-то, видимо, дописано?
Как вставить TAB в текстовое поле?
Добавлено: 25 Ноябрь 2015, 11:03
pansoft
С9.1, стандартные ABC шаблоны, работает. Добавил на форму элемент ?TEXT1. Скомпелил. Набираешь текст, при нажатии таб - теряет фокус. при нажатии ctr+таб, выполняет операцию табуляции. На сколько я помню в 6 так же все работало. Я даже помню про это из 6.1, а в 9 сейчас только проверил.