Турбо Паскаль 6.0


Добавление новых цветов.


Вы можете добавить дополнительные цвета к типу объекта окна, который позволит использовать различные цвета при создании новых видимых элементов. Например допустим, Вы решили добавить третий цвет для скроллера для другого типа подсветки как используется для точек прерывания в редакторе IDE. Это может быть сделано наследованием нового типа объекта из существующего TWindow и добавлением к палитре по умолчанию:

type TMyWindow = object(Window) function GetPalette: PPalette; virtual; end;

function TMyWindow.GetPalette: PPalette; const CMyWindow := CBlueWindow + #84; P: string[Length(CMyWindow)] = CMyWindow; begin GetPalette := @P; end;

Примечание: Палитры - это строки, так что Вы можете использовать строковые операции, такие как "+".

Сейчас TMyWindow имеет новый элемент палитры, который содержит новый тип подсветки. CWindow - это строковая константа, содержащая палитру TWindow по умолчанию. Вы должны изменить метод GetPalette для MyScroller чтобы использовать это:

function TMyScroller.GetPalette: PPalette; const CMyScroller = #6#7#9; P: string[Length(CMyScroller)] = CMyScroller; begin GetPalette := @P; end;

Элемент 3 палитры скроллера - это новый цвет подсветки (в данном случае белый на красном). Если Вы используете новую GetPalette используя CMyScroller, который обращается к 9 элементу в палитре владельца, убедитесь, что владелец действительно использует палитру CMyWindow. Если Вы попытаетесь обратиться к 9 элементу в 8- элементной палитре, результат будет непредсказуем.

 




- Начало -  - Назад -  - Вперед -



Книжный магазин