TURBO PASCAL

Новости

Программы   

Turbo Pascal 

Игры

Документация   

Странности

FAQ

Ссылки

Форум

Гостевая книга

Рассылка

Благодарности

Об авторе

 

 

10.2. МОДУЛЬ WINCRT

В состав ВР входит модуль WinCRT, с помощью которого создается полноценное Windows—окно с собственной оконной функцией. Все действия по созданию окна выполняются в установочной секции модуля и, следовательно, скрыты от программиста. Таким образом, многие MS-DOS—программы можно практически без переделки перенести в среду Windows: для этого достаточно указать ссылку на WinCRT в предложении Uses. Например, следующая программа выводит график и таблицу значений функции у = sin(x):

Program WinCRT_Demo;

Uses WinCRT;

var

k: Integer; {Параметр цикла} const

NX = 50; {Количество точек по горизонтали} dX = 2*pi/NX; {Шаг табуляции} NY = 10; {Амплитуда графика} begin

ScreenSize.X := 80; {Ширина виртуального экрана} ScreenSize.Y := 60; {Длина экрана} AutoTracking := False;{Запрещаем прокрутку} for k := 0 to NX do begin

{Выводим ось абсцисс:}

GotoXY(k+l,NY) ;

Write(' -') ;

{Выводим точки графика:}

GotoXY(k+1,Round(NY*(1+sin(dX*k))));

Write ('*');

{Формируем таблицу значений:} GotoXY(NX+5,k+l) ;

Write(dX*k:4:2,sin(dX*k):8:2) end;

end.

После ссылки на WinCRT в распоряжение программы предоставляются некоторые из процедур и функций стандартного модуля CRT, рассчитанные на текстовый режим работы. В частности, программа может использовать стандартные процедуры ввода—вывода ReadLn и WriteLn, функции KeyPressed и ReadKey, процедуру GotoXY. Для программы создается специальное окно, размеры и положение которого можно менять. В это окно направляется текстовый вывод программы, причем с помощью стандартных для Windows полос управления по бокам окна можно просмотреть вывод, не умещающийся полностью в пределах окна.

Следует учестьг что кодировка символов кириллицы в Windows отличается от широко используемой альтернативной кодировки ДОС, поэтому, если Ваша программа посылает на экран русскоязычные сообщения, в Windows—окне эти сообщения будет невозможно прочитать. Символы кириллицы в Windows используют последние 64 значения кодов: диапазон от 192 до 223 занимают коды заглавных букв от А до Я (без Ё), а диапазон от 224 до 255 — коды строчных буквы от а до я (без ё). Код буквы Ё — 168, а ё - 184.

Д^я преобразования символов можно использовать такую функцию:

Function OEM_to_ANSI(S: String): String;

var

k: Integer;

begin

for k := 1 to Length(S) do case S[k] of

•A'..'Я': S[k] := chr(ord(S[k])-ord('A')+192) ;

'a'..'!!': S[k] := chr(ord(S[k])-ord('a')+224) ;

•p'..'я': S[k] := chr(ord(S[k])-ord('p')+240) end;

OEM_to_ANSI := S end;

Вставьте в текст предыдущей программы эту функцию, а перед оператором

for k := 0 to NX do добавьте

WriteLn(OEM_to_ANSI('График функции SIN(X)')) ;

чтобы в Windows — окне напечатать заголовок графика.

 

 Глава 10

Оглавление

На первую страницу

Rambler's Top100 Rambler's Top100
PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

Hosted by uCoz