Элемент управления Scintilla

14.11.09

Разработка - Разработка внешних компонент

1sci.dll - внешняя компонента для 1С:Предприятие

ВК реализует элемент управления Scintilla.

Не требует регистрации в реестре.

Скачать файлы

Наименование Файл Версия Размер
-
.1245054996 41,28Kb
360
.1245054996 41,28Kb 360 Скачать бесплатно

1sci.dll - внешняя компонента для 1С:Предприятие

ВК реализует элемент управления Scintilla.
Не требует регистрации в реестре.
Реализует интерфейс v7Control, следовательно создается на форме и через FormEx, и через класс Форма в 1с++ версий 2.5 и старше

Методы аналогичны методам "родного" ЭУ Scintilla и описаны в документации (http://scintilla.sourceforge.net/ScintillaDoc.html)

Дополнительные методы:
SendSciMessage(message, wParam, lPAram)
SaveToFile(ИмяФайла)
LoadFromFile(ИмяФайла)
LineLen(НомерСтроки)
SetRange(line1, col1, line2, col2, Text)
MoveCaret(line1, col1, line2, col2)
Range(line1, col1, line2, col2, Text)

Свойства:
Text
SelStartLine
SelStartCol
SelEndLine
SelEndCol

События:
OnStyleNeeded(position)
OnCharAdded(ch)
OnSavePointReached()
OnSavePointLeft()
OnModifyAttemptRO()
OnDoubleClick(position, line, ctrl, shift, alt)
OnUpdateU I()
OnModified(modType, position, length, linesAdded, line)
OnMarginClick(margin, position, ctrl, shift, alt)
OnNeedShown(position, length)
OnUserListSelection(wParam, text)
OnDwellStart(position, x, y)
OnDwellEnd(position, x, y)
OnZoom()
OnHotSpotClick(position, ctrl, shift, alt)
OnHotSpotDoubleClick(position, ctrl, shift, alt)
OnCallTipClick(position)
OnAutoCSelection(wParam, text)
OnSetFocus()
OnKillFocus()
OnDestroy()
OnKeyDown(keyCode, alt, shift, ctrl, char, flag)

Для работы требуется SciLexer.dll от metaeditor или любой другой сборки версии не ниже 1.74 (Если вы используете SciColorer, то она у вас уже есть).
Последовательность поиска SciLexer.dll: каталог самой ВК, подкаталог config каталога программы, стандартная последовательность (каталог исполняемого файла, текущий каталог, PATH)

Написано в соавторстве с metaeditor.

http://www.1cpp.ru/forum/YaBB.pl?num=1217410246

Лицензия GPL.

См. также

HTTP сервер 1С 7.7 + HTTP асинхронный клиент: внешние компоненты для 1С 7.7

Разработка внешних компонент WEB-интеграция Платформа 1С v7.7 Конфигурации 1cv7 Платные (руб)

Компонента HttpSrv7 позволяет создавать веб-сервисы в среде 1С 7.7 и даже, используя файлы HTML, несложные веб-сайты. С помощью нее можно обеспечить доступ к данным 1С 7.7 из браузера. Дополнительно используя компоненту HTTP_Async или синхронный клиент HTTP для 1С 7.7 (публикация № 1152364) можно наладить обмен данными между удаленными информационными базами. С помощью компоненты HTTP_Async можно параллельно посылать много запросов к сайтам, веб-сервисам (в т.ч. к HttpSrv7), а затем обрабатывать данные по мере их поступления.

2000 руб.

27.05.2022    7810    19    13    

31

Компонента ExchangeStruc (Структура Обмена). Прямой обмен данными между потоками, сессиями и окнами.

Разработка внешних компонент Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Россия Платные (руб)

Аддон "Структура Обмена" (ExchangeStruc) - это компонента, которая обеспечивает доступ к разделяемым процессом структурам, аналогичным структурам 1С. Обеспечивает прозрачную передачу данных примитивных типов, в том числе Двоичных данных, в режиме Реального времени между разными контекстами (формами) или потоками одного процесса. В перспективе функционал будет расширен для обмена между процессами, даже разных версий платформ. Совместим с версиями Windows рабочих станций и серверов, с платформами 1С разных версий и релизов в режиме Native начиная с 8.2, и в режиме COM начиная с версий 7.7. По скорости чтения и записи лишь немногим уступает стандартной структуре 1С. НОВОЕ: Добавлен функционал регистрации компоненты COM в качестве OLE Auto (COMОбъект) для поддержки её работы в серверах старых версий 1С: 8.0 и 8.1, где работа с компонентами исключена. Теперь можно коммуникацию с Фоновыми заданиями на этих версиях проводить.

7200 руб.

19.04.2023    4799    1    0    

3

Выбор из большого списка (для 1С 7.7)

Разработка внешних компонент Платформа 1С v7.7 Платные (руб)

Компонента для выбора значения из больших списков значений.

1200 руб.

02.12.2021    5776    2    19    

4

Форма для ввода количества товаров

Разработка внешних компонент Оптовая торговля Платформа 1С v7.7 Конфигурации 1cv7 Управленческий учет Платные (руб)

Расширяем уровень взаимодействия c пользователем с помощью новых возможностей - форма для ввода количества для перемещений и форма ввода количества с упаковками и штуками.

1200 руб.

08.09.2021    7390    0    2    

1

Внешняя компонента для преобразования файлов из/в кодировку Base64 в 1С 7.7

Разработка внешних компонент Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Эта внешняя компонента Base64.dll предназначена для платформы 1С версии 7.7. Используется для преобразования файлов из/в кодировку Base64 из встроенного языка 1С Предприятие. Компонента тестировалась на базе конфигурации Бухгалтерский учет для Казахстана, редакции 7.70.257.

10 стартмани

06.04.2021    9445    14    softmaker    12    

5

Криптография: внешняя компонента для 1С 7.7

Разработка внешних компонент Защита ПО и шифрование Платформа 1С v7.7 Абонемент ($m)

Цифровые подписи, шифрование, просмотр сертификатов ключей ЭЦП, работа с различными криптопровайдерами (в т.ч. КриптоПРО ГОСТ 2012) в 1С 7.7.

1 стартмани

08.06.2020    9048    27    mdbruyfn    10    

9

Протокол UDP: внешняя компонента для 1С 7.7

Разработка внешних компонент Платформа 1С v7.7 Абонемент ($m)

Обмен сообщениями и небольшими файлами по протоколу UDP с 1С и внешними приложениями в локальной сети или сети VPN.

1 стартмани

23.05.2020    7316    5    mdbruyfn    0    

6
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. fishca 1254 15.06.09 22:08 Сейчас в теме
Жаль только что семерка уходит в прошлое...А в восьмерке такого и не предвидица :)
2. Ёпрст 1063 16.06.09 08:14 Сейчас в теме
5. fishca 1254 16.06.09 09:13 Сейчас в теме
(2) 5 лет работаю только с клиентами на восьмерке
(4) восьмерке будет еще долго жить, на подходе 8.2, семерка, это же не 7.0 ;)
6. Ёпрст 1063 16.06.09 09:30 Сейчас в теме
(5) И чего ? Я в 2 раза дольше на клюшках... не показатель.
7. fishca 1254 16.06.09 09:37 Сейчас в теме
(6) согласен не показатель
семерка имеет право на сосуществование с восьмеркой, кому-то хватает и ее
1С пока поддерживает и шестерку :)
3. serpent 67 16.06.09 08:15 Сейчас в теме
(1) в прошлое она77 долго не уйдет, не надейтесь
4. Арчибальд 2706 16.06.09 08:26 Сейчас в теме
(1) Есть вариант, что восьмерка уйдет в прошлое раньше. Где у нас 8.0?
8. Арчибальд 2706 16.06.09 09:44 Сейчас в теме
Оффтоп прекращаем, господа!
9. fAngel 371 16.06.09 18:31 Сейчас в теме
Спасибо автору и громадное спасибо metaeditor за его замечательный продукт
теперь 8 в плане удобства программирования далеко позади 7.7 и новые проекты если они не большие предпочитаю делать на 7.7
10. sergeypv 17.06.09 07:18 Сейчас в теме
А можно ссылки на ert к рис.4269 и рис.4270 ?
12. steban 73 17.06.09 14:36 Сейчас в теме
(10) конфа, в которой получен скрин 4270, лежит тут: http://www.1cpp.ru/forum/YaBB.pl?num=1217410246/34#34

скрин 4269 получен в обработке "1c query analyzer", слегка допиленной Артемом aka Arta. В свободном доступе ее пока нету.
оригинальный Query Analyzer - http://dev.citykirov.ru/1CQA.zip
13. sergeypv 18.06.09 10:02 Сейчас в теме
(12) просто всем спасибо. Проект значительно снижает нагрузку на глаза - повышает скорость визуального поиска, исключает возможность ошибки с реквизитами в коде и упрощает способы работы, когда работаешь с 7.7 и 8 одновременно.
11. rasswet 82 17.06.09 10:52 Сейчас в теме
видно что-то для профии)) судя по отсутствию простого описания. Типа кому нужно-тот и так знает:)
14. mdbm 190 24.06.09 10:14 Сейчас в теме
Залил dll в папку config
Вошел в 1С
Запустил демку.ert
Выдает:

sci=Ф.СоздатьЭлементУправления("Scintilla","ScintillaControl");
{E:\1C_BASES\ SCINTILLA\SCINTILLADEMO.ERT(247)}: Недопустимое имя класса: 'Scintilla'.

С чем это может быть связано ?
15. steban 73 24.06.09 10:42 Сейчас в теме
в папке config ищется SciLexer.dll. ее можно взять тут: http://infostart.ru/projects/3783/

1sci.dll должна лежать там, откуда она может быть загружена методом ЗагрузитьВнешнююКомпоненту (например в каталоге программы).
16. mdbm 190 24.06.09 11:27 Сейчас в теме
1sci.dll положил в папку BIN
SciLexer.dll лежит в папке config (перезалил по твоей ссылке)
1cpp.dll лежит в папке BIN (размер 1 998 848 байт )

Ошибка та же:
sci=Ф.СоздатьЭлементУправления("Scintilla","ScintillaControl");
{E:\1C_BASES\ SCINTILLA\SCINTILLADEMO.ERT(247)}: Недопустимое имя класса: 'Scintilla'.
17. steban 73 24.06.09 12:08 Сейчас в теме
ввести в табло: ЗагрузитьВнешнююКомпоненту("1sci.dll")
что показывается?
18. mdbm 190 24.06.09 16:38 Сейчас в теме
Получилось !!! )))
Спасибо за совет.
Попробую прикрутить к своей консоли
19. AnyBody 09.07.09 15:35 Сейчас в теме
А как "поймать вырезанный" кусок текста? Действие "CUT" я ловлю, а как получить то, что вырезано?
20. AnyBody 09.07.09 16:18 Сейчас в теме
Все разобрался. Не включил "свисток"(SC_MOD_BEFOREDELETE 0x800 Text is about to be deleted from the document ) на эти события.
21. maljaev 789 05.08.09 09:08 Сейчас в теме
Несколько вопросов:

1) Почему-то при вызове метода undo у меня отменяется весь набранный текст. А как сделать многошаговый undo? Ну и redo соответственно.
2) Прикрутить телепат/интеллисенс невозможно никак?
3) Как сделать форматирование блоков как в конфигураторе?
25. steban 73 25.12.09 13:36 Сейчас в теме
(21)
Почему-то при вызове метода undo у меня отменяется весь набранный текст. А как сделать многошаговый undo? Ну и redo соответственно
вызвать SetUndoCollection(1) (http://www.scintilla.org/ScintillaDoc.html#SCI_SETUNDOCOLLECTION )

2) Прикрутить телепат/интеллисенс невозможно никак?

не скажу, что невозможно.

Но легких способов прикрутить готовые интеллисенс-скрипты я не вижу

3) Как сделать форматирование блоков как в конфигураторе?
не понял
29. alyuev 202 29.03.12 12:49 Сейчас в теме
(25) В какую сторону смотреть, чтобы сделать подсветку выделенного слова во всех местах, как в Colorer? И откуда ноги растут у интеллисенса? Чтобы хотя бы основные операторы подсказывать.
26. steban 73 25.12.09 13:40 Сейчас в теме
(21) и совет из (24) тоже актуален - заработает кнопка undo на стандартной панели инструментов 1с и хоткей undo на Alt+Backspace
22. bazilisa 16.12.09 22:44 Сейчас в теме
никогда бы не додумлся.
А про + мог бы и не просить и так поставлю - не жалко
23. ture 606 24.12.09 19:24 Сейчас в теме
Как побороть проблему с копированием в буфер и вставкой обратно. Честно говоря уже замаялся писать текст в этом объекте - делаю CTRL+C, чтоб чуть выше или ниже сделать CTRL+P, и бац! а буфер не содержит того, что копировал. Пример моей работы тут (без рекламы).
Прошу пояснить почему в буфер не попадает или из буфера не вставляется.
24. steban 73 25.12.09 12:53 Сейчас в теме
(23) создавай Scintill'у не на кнопке, а на поле ввода
27. ture 606 28.12.09 10:56 Сейчас в теме
(24) Добрый человек. Я сделал все ка ты мне сказал и теперь при переходе между закладками со 100% вероятностью получаю вылет из 1С при вызове метода "Форма.ИспользоватьСлой". О какой-либо помощи и просить не смею.
28. steban 73 28.12.09 14:19 Сейчас в теме
(27) принято
в следующем году буду разбираться.
30. alyuev 202 30.03.12 16:46 Сейчас в теме
(27) Возможное решение проблемы вылетов (что у меня было и без ИспользоватьСлой(), правда, что еще более загадочно - не у все) - поставить признак многострочности и неограниченности у текстового поля ввода, которое используется в качестве реквизита-контейнера Scintilla.
31. ture 606 31.03.12 08:53 Сейчас в теме
По себе скажу - лучше не связываться, описаний мало, ошибок много, автор проект бросил и вы свой бросите, если станете опираться на этот.
wolfsoft; +1 Ответить
Оставьте свое сообщение