|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.09.2012, 12:03 | #1 |
Пользователь
Регистрация: 12.11.2011
Сообщений: 27
|
Поля MEMO и тэги форматирования
Добрый день
Возникла такая проблема. В рабочей базе есть поля MEMO в которые, пользователи вставляют текст через буфер обмена (Ctrl+C, Ctrl+V) из разных источников (Word, Excel, HTML). И помимо самого текста переносятся форматирование текста (Шрифты), которое отображается в поле в виде тэгов (<div><font face="Times New Roman" size=3 color=black>ТЕКСТ</font></div>). Как возможно вставлять текст из буфера без форматирования? Поиском ничего подходящего не нашел, кроме сторонних программ. Вариант сторонние программы не подходит так как с базой работают с разных компьютеров и лишний софт устанавливать не желательно. |
06.09.2012, 16:37 | #2 |
Форумчанин
Регистрация: 20.05.2012
Сообщений: 311
|
Как изящно от этого избавиться я не знаю, поэтому делал бы банальным реплэйсом на событие, наверное, потеря фокуса.
Теги имеют структурированный вид, а значит, предположительно, можно привязаться к символам: <, >, color и т.д. Используя функции InStr, Mid, можно забирать эти символы и их окружение. Предположительно... |
06.09.2012, 18:45 | #3 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Wind-up Bird.
"..Возникла такая проблема.." Заменив у поля формы значение Формат текста с Формат RTF на Обычный текст (и для соответствующего поля MEMO таблицы на Обычный текст если не будет использоваться форматирование) Вы избавитесь от своей "проблемы" без всяких танцев с бубнами. У Access старше А2007 такой проблемы не было, может стоит перейти на А2003. Евгений. Последний раз редактировалось Teslenko_EA; 06.09.2012 в 19:34. |
07.09.2012, 14:41 | #4 | |
Пользователь
Регистрация: 12.11.2011
Сообщений: 27
|
Цитата:
В этом и загвоздка что форматирование нужно. Т.е необходимо нечто подобное Копирование - очистка формата - вставка - и добавление пользовательского форматирования текста. В Word Excel есть для этого кнопка Очистить формат..Есть что-то подобное в Access? |
|
07.09.2012, 15:39 | #5 |
Форумчанин
Регистрация: 20.05.2012
Сообщений: 311
|
Wind-up Bird,
а вы работаете с формами или напрямую с таблицами? |
07.09.2012, 15:43 | #6 |
Пользователь
Регистрация: 12.11.2011
Сообщений: 27
|
|
07.09.2012, 18:52 | #7 | ||
Форумчанин
Регистрация: 20.05.2012
Сообщений: 311
|
Цитата:
Код:
Цитата:
|
||
07.09.2012, 22:28 | #8 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Wind-up Bird.
"..В этом и загвоздка что форматирование нужно.." - или Вы не поняли моё сообщение или Вам на самом деле нравятся "танцы с бубнами", или я не понял Вашего объяснения не думал, что это может стать проблемой. В образце БД который любезно предоставил Андрэич, (в его варианте формат БД А2003), выполняется "борьба" с тэгами пользовательской VBA функцией это я и называл - "танцы с бубнами" А2003 не поддерживает ввод/отображение RTF форматирования вовсе(!) отображение тэгов не зависит от формата "хранилища" (MEMO поля таблицы) только с помощью новых контролов (поля ввода MS Access версий старше 2003) можно вводить/отображать данные с форматированием RTF Потому можно предположить, что используемая Вами БД сетевая и кто-то из пользователей обращается к ней из интерфейса А2007 или выше и тэги вместе с текстом сохраняются. Текст вставляемый в поле формы со значением Формат текста = Обычный текст теряет всякое форматирование и соответственно тэги, этого достаточно для "борьбы" с этими служебными символами. В образце форма с четырьмя полями с заданным форматированием Текст, RTF, Текст, RTF соответственно. Источником для этих четырех полей служат два МЕМО поля с Текст и RTF форматированием. Поупражняйтесь во вставке данных с форматированием в разные поля Евгений. Последний раз редактировалось Teslenko_EA; 07.09.2012 в 22:31. |
10.09.2012, 11:51 | #9 | |
Пользователь
Регистрация: 12.11.2011
Сообщений: 27
|
Цитата:
Форматирование нужно, иначе бессмысленно хранить тэги форматирование (форматирование). Но при вставке из разных источником (с разным форматированием). И последующей изменение пользователем форматирование получается "каша" из тэгов форматирования. Так как изначальное форматирование не удаляется |
|
10.09.2012, 12:31 | #10 |
Форумчанин
Регистрация: 20.05.2012
Сообщений: 311
|
Wind-up Bird,
после того как данные попадают в это мемо-поле, они впоследствии ещё редактируются? Если ответ Да -то я полностью присоединяюсь к тому, что говорит вам Евгений. В этом случае служебный текст храниться не должен. А предложенное им решение - это самый оптимальный способ этого избежать |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Свойство Lines поля Memo | Jaga_89 | Общие вопросы Delphi | 8 | 16.02.2012 18:11 |
Загрузка Memo поля в Hint | Gulik | БД в Delphi | 1 | 03.07.2011 00:54 |
Помещать поля таблицы БД в MEMO | ulala | Помощь студентам | 16 | 24.10.2010 20:38 |
DBGrid и поля с типом MEMO | doncova1 | БД в Delphi | 4 | 27.03.2009 01:20 |
Отображение Аксесовского поля MEMO в DBMemo | Pinya | БД в Delphi | 2 | 12.08.2008 09:20 |