2012-05-13 1 views
0

Я нахожусь в середине создания пользовательского лексера. Затем я обнаружил, что StyledTextCtrl.StartStyling() - это метод, используемый для начала применения стиля к тексту, но я не знаю, что такое маска. Я напечатал StartStyling.__doc__ и получил этотStyledTextCtrl Styling Mask, что это такое?

StyledTextCtrl.StartStyling(self, int pos, int mask) 
Set the current styling position to pos and the styling mask to mask. 
The styling mask can be used to protect some bits in each styling byte from modification. 

Как применяется здесь маска для укладки и как выбрать то, что маска номер мы должны дать?

+0

Не могли бы вы дать дополнительную информацию о форексе? Некоторый код или некоторая информация о том, почему вы хотите использовать этот метод, помогут. – acattle

+0

Справочная информация добавлена. –

+0

Я честно провел несколько часов сегодня, пытаясь найти учебник, ЛЮБОЙ учебник, чтобы помочь мне понять, как использовать StyledTextCtrl, и я не могу найти его! Можете ли вы объяснить немного больше о том, что вы планируете делать? Могу ли я помочь вам найти альтернативу? – acattle

ответ

2

Эта страница объясняет большинство из них:

http://www.yellowbrain.com/stc/styling.html

Целое Параметр поз задает позицию, в которой вы хотели бы начать операции укладки. Маска целочисленных параметров указывает, какие биты изменяют байты стиля.

Из документации Scintilla: Маска позволяет укладка происходить через несколько проходов, с, например, основной стиль делается на начальном проходе, чтобы гарантировать, что текст кода рассматривается быстро и правильно, а затем второй медленный проход, обнаружение ошибок синтаксиса и с использованием индикаторов, чтобы показать, где они находятся. Например, при стандартных настройках из 5 битов стиля и 3 бита индикатора вы должны использовать значение маски 31 (0x1f), если вы настраиваете стили текста, а не хотите изменить индикаторы.

Возможно, вы хотите, чтобы ваша маска была 0x1f (минимум 5 бит), это по соглашению. Низкие 5 бит используются для стилей (до 32 разных стилей), а высокие 3 бита используются для индикаторов.