Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

TRichTextEdit и подсветка кода

548
10 июня 2009 года
Maximillian_Cavalera
157 / / 16.08.2007
Я пишу компилятор для языка Brainfuck на BCB 6. Для того чтобы можно было подсвечивать синтаксис использую TRichTextEdit. Подсвечивание делаю следующим образом: есть таймер, который каждые 500 мс пробекгает по коду и смотрит каждый символ (в Brainfuck'e все операторы занимают 1 символ, переменных нету). Если такой символ должен подсвечиваться, то выделяем его, ставим в атрибутах выделенного текста нужный цвет. Возникает проблема в том что текст на экране мерцает и видно иногда выделение буквы. Я пробовал производить этот алгоритм каждый раз при нажатии клавиши, но всё равно то же самое. Подскажите, как можно сделать, чтобы TRichTextEdit не мерцал.
1
11 июня 2009 года
kot_
7.3K / / 20.01.2000
а зачем пробегаться по коду? Обрабатывайте только ввод пользователя - ведь компонент сохраняет установленное форматирование - зачем же его раз за разом устанавливать заново? Естественно будет мерцать.
Ну как вариант - DoubleBuffered = true;.
288
11 июня 2009 года
nikitozz
1.2K / / 09.03.2007
Извиняюсь за оффтоп. Язык действительно называется Brainfuck?
43K
15 июня 2009 года
2fasti
9 / / 01.12.2008
вощем есть кусок кода, который подсвечивает слова, берущиеся из текстового файла (список). Не могу только допилить его до обработки текста после вставки. Можете помочь?
7.4K
15 июня 2009 года
T...H
159 / / 28.12.2008
ну давай свой код, а мы приминительно посмотрев к нему найдём решение, как же мы вслепую поможем?? :)
43K
15 июня 2009 года
2fasti
9 / / 01.12.2008
да, конечно.

вот код http://file.qip.ru/file/91808715/1e59bd42/_online.html

вот проект (вместе с кодом) http://file.qip.ru/file/91803393/efebbda2/_online.html

Во-первых я не смог сделать так, чтобы была реакция на ctrl+V, почему-то на контрол реакции ноль (делал через OnKeyDown), а на V реагирует.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог