Цветовая палитра
Осталось отредактировать конструктор TWorkWinJnit – нужно изменить тип переменной Interior:
var ……. Interior: PInterior;
И обращение к конструктору:
Interior: = New(PInterior, Init(Bounds, HS, VS));
Но не спешите запускать программу на счет: ведь файла данных пока еще нет, а поэтому Вы ничего не увидите на экране. Чтобы все-таки оценить достигнутые результаты, измените текст процедуры ReadFile – добавьте в него следующие строки:
Procedure TInterior.ReadFile; {Читает содержимое файла данных} var ……. f: text; begin s: = copy(ParamStr(0),l,pos('.',ParamStr(0)))+'pas'; assign(f,s); reset(f); {Открываем файл с текстом программы} NLines: = 0; while not EOF(f) and (NLines < MaxLine) do begin inc(NLines); ReadLn(f/Lines[NLines]) end; close (f); exit; ……. end; {ReadFile}
Добавленные строки заставят процедуру прочитать в массив Lines текст самой программы (если Вы будете запускать программу из среды Турбо Паскаль, не забудьте установить компиляцию в дисковый файл опцией COMPILE/DESTINATION, иначе оператор:
s: = copy(ParamStr(0),l,pos('.',ParamStr(0)))+'pas';
Не сможет установить в S правильное имя файла с текстом Вашей программы). После запуска программы нажмите клавишу F3, задайте имя несуществующего файла, нажмите клавиши Enter и F4 – на экране появится изображение, показанное на рис. 15.8.
Рис. 15.8. Окно с текстом программы.
Это окно откликается на нажатие клавиш управления курсором, команды PgUp, PgDn, CTRL + PgUp и т.д. подобно тому, как ведет себя окно редактора в среде Турбо Паскаль. С помощью мыши Вы можете перемещать его по экрану, изменять размеры, закрывать – все эти действия реализует стандартный обработчик событий объекта TScroller.