f o r d : = 0 t o 2 5 5 d o
f o r j : = 0 t o S c r e e n . C h a r B y t e s - 1 d o
B u f 2 A [ d * S c r e e n . C h a r B y t e s + j ] : =
B u f A [ d * B y t e P e r C h a r + t r u n c ( k * j ) ] ;
S e t C h a r T a b l e ( B u f 2 A [ F i r s t C h a r * S c r e e n . C h a r B y t e s ] ,
F i r s t C h a r , C h a r C o u n t , S c r e e n . C h a r B y t e s ) ;
e n d ;
F r e e M e m ( B u f 2 , 2 5 6 » S c r e e n . C h a r B y t e s ) ;
F r e e M e m f B u f , 2 5 6 * B y t e P e r C h a r ) ;
e n d ;
R e s : = n i l ;
N e w ( R e s , C r e a t e ( ' f o n t s . r e s ' , r t X M S ) ),-
i f R e s = n i l t h e n b e g i n
w r i t e l n ( ' C r e a t e o b j e c t e r r o r . ' ) ,•
halt,•
e n d ;
i f n o t S e t T e x t M o d e ( m o d e ) t h e n b e g i n
D i s p o s e ( R e s , F r e e ) ;
w r i t e l n ( ' B a d s c r e e n m o d e ' ) ;
h a l t ;
p r o c e d u r e S e t F o n t ;
b e g i n
i f I n s t a l l F o n t F r o m R e s o u r c e ( F o n t [ F o n t l n d e x ] ,
0 , 2 5 6 , 8 ) > 0 t h e n
i f S e t T e x t M o d e ( 0 ) t h e n b e g i n
D i s p o s e ( R e s , F r e e ) ;
w r i t e l n ( ' B a d f o n t i n d e x ' , F o n t l n d e x ) ;
h a l t ;
e n d ;
e n d ;
p r o c e d u r e N e x t M o d e ;
b e g i n
i f m o d e < 5 t h e n I n c ( m o d e )
e l s e m o d e : = 0 ;
i f n o t S e t T e x t M o d e ( m o d e ) t h e n b e g i n
D i s p o s e ( R e s , F r e e ) ;
w r i t e l n ( ' B a d s c r e e n m o d e ' ) ;
h a l t ;
e n d ;
S e t F o n t ;
S e t C u r S i z e ( 0 , S c r e e n . C h a r H e i g h t - 1 ) ;
e n d ;
p r o c e d u r e N e x t F o n t ;
b e g i n
i f F o n t l n d e x < M a x F o n t t h e n I n c ( F o n t l n d e x )
e l s e F o n t l n d e x : = 0 ;
S e t F o n t ;
e n d ;
f u n c t i o n I n t T o S t r ( v a l u e ; l o n g i n t ) : s t r i n g ;
v a r s s s t r i n g ;
b e g i n
S t r ( v a l u e , s ) ;
I n t T o S t r ; = s ;
e n d ;
b e g i n
m o d e : = 0 ;
F o n t l n d e x : = 0 ;
i f n o t I n i t X M S t h e n b e g i n
w r i t e l n ( 'X M S d r i v e r n o t f o u n d . ' ) ;
h a l t ;
e n d ;
S e t C u r S i z e (
0 ,
S c r e e n . C h a r H e i g h t - 1 ) ;
S e t F o n t ;
r e p e a t
F i l l S c r ( ' ' , c l W h i t e , c l L i g h t G r a y ) ;
S e t T e x t C o l o r ( c l W h i t e ) ;
T e x t O u t ( 0 , 1 , ' H e l l o , у к р а и н ц ы ! ' ) ;
T e x t O u t ( 0,2, 'Р е ж и м : ' + I n t T o S t r ( m o d e ) ) ;
T e x t O u t ( 0 , 3 , ' C u r r e n t F o n t : ' + F o n t [ F o n t l n d e x ] ) ;
T e x t O u t ( 0 , 5 , ' F i l e s : ' ) ;
f o r d : = 0 t o R e s A . C o u n t - 1 d o b e g i n
R e s A . G e t F i l e ( d , A F i l e ) ;
T e x t O u t ( 0 , d + 7 , ' F i l e ' + I n t T o S t r ( d ) +
' : ' + A F i l e . N a m e + ' , ' +
I n t T o S t r ( A F i l e . I n d e x ) ) ;
e n d ;
f o r d : = 0 t o 1 2 7 d o
T e x t O u t ( d . S c r e e n . M a x Y - 3 , c h a r ( d ) ) ;
f o r d : = 1 2 8 t o 2 5 5 d o
T e x t O u t ( d - 1 2 8 . S c r e e n . M a x Y - 1 , c h a r ( d ) ) ;
k e y : = w a i t k e y ;
i f k e y = V K _ E n t e r t h e n N e x t M o d e ;
i f k e y = V K S p a c e t h e n N e x t F o n t ;
u n t i l k e y = V K _ E s c ;
D i s p o s e ( R e s , F r e e ) ;
i f S e t T e x t M o d e (
0
) t h e n ;
e n d .
Программа работает таким образом, что при каждом нажатии
клавиши «пробел» будет меняться шрифт от первого в а
1
иске константы
Font и до последнего, после чего снова с первого, и так по кругу.
На экране будет отображаться информация о номере текущего
текстового режима, изменять который можно нажатием клавиши
En-
ter.
Помимо того, будет выводиться информация о названии текущего
шрифта и даже список всех имеющихся шрифтов в ресурсном файле.
Доступ к информации о вложенном файле будет осуществляться при
помощи вызова метода
R e s A . G e t F i l e ( d , A F i l e ) , где переменная
A F i l e , объявленная с идентификатором T F i l e , получоет данные о
файле, и эти данные могут быть доступны через поля этой переменной.
Завершить выполнение программы можно нажатием клавиши
Esc
IП/зодолжение следует)
e n d ;
Мікрофони
Навушники
Комплекти
Акустичні систем
Домашні кінотеатри
Киев
-Фокстрот" 8-800-500-1630 (безкоштовно) •
"НІС" (044) 234-3838 •
"КПІ-Сершс" (044) 248-Э556 •
"CкaйIйi^н, (044) 238-8600 ■
"DiaWest" (00) 456-8855 •
'О аеф /Ш
"Каре" (044)490-6344 •
"Навігатор" (044) 241-3494 •
"L7 Computers’ (044) 242-0931,253-2086 - "ВМ" (044) 290-4175 •
'WWM" (044) 490-2114
Харьков
"ОС Link' (0572) 195-229.544-828 •
"Литого" (0572) 586-245
Миколаїв
"Каре Миколаїв" (0512) 358-464
Дніпропетровськ
ТЮЗ. Ltd" (058) 790-0600,790 О ЯИ
Запоріжжя
«Рома, Лтд" (061) 220-9622
Луганськ
"Протон" (0642) 610-999,585-999
Луцк
"Сталкер ІТГ (0332) 729-859,779-779
ЛЬВІВ
"Компанія Алекр“ (032)233-1189, Іі
Севастополь "Щ Ш
(0692) 640-010
Тернопіль
"Компанія Алекс" (0352) 43-55-33
Одесса
"ТЩ” (0482) 290-812 "Алгри” (0482) 379-715.379-707
Сумы
"Кварк" (0542) 211
w w w . g e m b i r d , c o m . u a
М у л ь т і м е д і й н и к о м п о н е н т и
G
E M
B
I R
D
CM B Tech (Holland! BV
предыдущая страница 39 Мой Компьютер 2004 45 читать онлайн следующая страница 41 Мой Компьютер 2004 45 читать онлайн Домой Выключить/включить текст