!!! Редактор кода с подсветкой ключевых слов !!!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Клим
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 03.01.2004 (Сб) 17:07
Откуда: Russia

Сообщение Клим » 11.05.2004 (Вт) 15:37

подсвечивать код это просто.
Код: Выделить всё
for i=1 to len(text1.text)
a = instr(i,text1.text,"ЧЕ_Подсветить")
if(a <> 0) then
text1.selstart = a
text1.sellength = len(text1.text)
text1.selbold=true
text1.selcolor=vbwhite
else
exit for
end if
next i

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 11.05.2004 (Вт) 15:45

:arrow: <DELETE> :arrow: :twisted:
Последний раз редактировалось EvilCoder 18.03.2006 (Сб) 13:28, всего редактировалось 1 раз.
<<------- EvilCoder ------->>

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 11.05.2004 (Вт) 16:06

2 Roman Koff.
Я когда-то тоже был увлечён этой темой. Так вот, я нашёл программу (Tera text editor). Я от туда и "спилил" контрол (Знаю что не красиво). Этот контрол круче нашего Рича в раз 10.
Счас попробую его выложить...

Да, я так и не разобрался с выделением цветов, правда нашёл кое-что другое.Если разберёшся, то напиши
Вложения
tredit21.zip
Сам контрол
(180.3 Кб) Скачиваний: 49
Состояний же любви — десять: любовный взгляд, привязанность в мыслях, рождение желания, бессонница, исхудание, отвращение к предметам восприятия, утрата стыда, безумие, потеря сознания и смерть — вот их признаки

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 11.05.2004 (Вт) 17:18

Тырим компоненты, товарищи? Это не есть хорошо...
Хотя многие VB'шники делают это (см., например, сюда, ну это же содрано один к одному :P), ну и ладно.
Все бы было ничего, однако же у этого компонента есть пробелы в функционале: перенос строк (Word Wrap) этот контрол не поддерживает, а это не есть гут :oops:

ЗЫ Создавать контролы - проще простого: File :arrow: New Project :arrow: ActiveX Control.

ЗЗЫ А мой вариант решения проблемы - регэкспы Microsoft Script + RichTextBox. Проверено кувалдой :evil:
Последний раз редактировалось hCORe 11.05.2004 (Вт) 17:25, всего редактировалось 1 раз.
Моду создают модоки, а распространяют модозвоны.

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 11.05.2004 (Вт) 17:23

А мой вариант решения проблемы - регэкспы Microsoft Script + RichTextBox. Проверено кувалдой


Если бегать по всему тексту, то слишком медленно. Да и если написаны не очень хорошо выражения, то даже экранная часть будет пробегатся за ощутимое время.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 11.05.2004 (Вт) 17:28

1 Mb HTML, MS Script Regular Expressions 5.6 Lib, 0.75 с
Тем более, у меня регэкспы ищут выражения "<...>", "<!--...-->", "<%...%>". Все остальное пропускается. И к тому же, выделение тэгов идет через них идет только при открытии/создании документа. :evil:
Да и при вводе у меня выделение "на лету" (InStr и Mid$ в помощь :P)
Моду создают модоки, а распространяют модозвоны.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 11.05.2004 (Вт) 18:11

WM_PASTE и оконные процедуры тебе в помощь. Если, конечно, ты его действительно поймаешь - там хитрый перехват нужен. Да и с содержимым клипборда напаришься, особенно если это Ворд... Вообще, пошукай Spy++'ом на тестовом примере.

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 11.05.2004 (Вт) 18:28

Ну почему же, подъемная. VB же как-то написали :) . За пять минут не склепать - это да, а сделать реально. Правда, если хочешь приемлемую скорость, то делай сразу либо на С++, либо на Дельфях, либо на чем еще реально компилирующем - по скорости Басик не тянет...

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 11.05.2004 (Вт) 18:39

Roman Koff:
Кто сказал неподъемная? Вот Ennor же сделал, и неплохо :roll:
И я сделал (тоже ничего) :P
Ничего сложного и страшного здесь нет, но, чтобы производительность была "на уровне" надо много и долго возиться :x
А еще почитай вот это http://bbs.vbstreets.ru/viewtopic.php?t=6570&highlight= на досуге. Интересная тема про RichAPI. Если захочешь небольшого, но ощутимого прироста производительности, переходи на Win32 API-функции :twisted:
Моду создают модоки, а распространяют модозвоны.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 22

    TopList