AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.08.2008, 16:11   #1  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
Как получить выделенный текст из StringEdit
У элемента управления StringEdit есть метод getSelection, который возвращает индексы начального и конечного символа выделенного текста. Сначала сделал так:
X++:
int p, n;
[p,n] = memo.getSelection();

info(substr(memo.text(),p+1, n-p));
Если свойство MultiLine = No, то все работает правильно, если MultiLine = Yes, то возвращаются некорректные данные. Опытным путем удалось выяснить, что проблема в том, что getSelection учитывает символы перевода строки, а substr их не учитывает.
Пришлось извратиться следующим образом:
X++:
int p, n, c1,c2;
[p,n] = memo.getSelection();

c1  = charcount(substr(memo.text(),1,p),'\n');
c2 = charcount(substr(memo.text(),p,n-p),'\n');
info(substr(memo.text(),p+1-c1, n-p-c2));
где charcount возвращает число указанных символов в строке
X++:
int charcount(str s, str c)
{
   return strlen(strkeep(s,c));
}
Кто-нибудь знает более простой способ получить выделенный фрагмент из StringEdit?
Подозреваю что, либо такой способ есть, так как от индексов, которые возвращает getSelection, в чистом виде пользы мало, либо это баг.
Теги
stringedit, выделенный текст, ax3.0, ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
DataSources и StringEdit на форме Poleax DAX: Программирование 3 16.05.2008 11:32
Ruslan Goncharov: Dynamic enabled() property for StringEdit and arrows Blog bot DAX Blogs 0 18.04.2008 20:05
Как получить указатель на отчёт когда пользователь выбрал Печать на принтер в просмотрщике, в форму SysPrintForm? rkorchagin DAX: Программирование 10 17.04.2008 11:59
Как правильно получить значение с компонента формы Daido DAX: Программирование 5 05.11.2007 17:37
Получить текст из word через Com Кирилл DAX: Программирование 4 18.10.2006 11:01

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:16.