IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

 
 Ответить  Открыть новую тему 
> Рисование двумя видеостраницами., В чем ошибка?
сообщение
Сообщение #1


Гость






Вот такой простенький пример. По экрану должeн двигатсься квадрат.

Uses Graph;
var x,y: Integer;
a, v: Byte;
procedure Flip;
begin
a:= a xor 1;
v:= v xor 1;
SetVisualPage(v);
SetActivePage(a);
end;
BEGIN
x:= 9; y:= 2;
a:= 0; v:= 1;
InitGraph(x, y, 'C:\BP\BGI');
SetActivePage(a);
SetVisualPage(v);
for x:=0 to 600 do
begin
ClearDevice;
Bar(x, 30,x+30,60);
Flip;
end;
ReadLn;
END.


Вместо этого квадрат рисуется в двух местах (сверху и снизу). В чем дело?
Может проблема связана с вертикальной разверткой? Если так, то как синхронизировать (используя только Graph)?

М
ТЕГИ!
Altair



Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
Вместо этого квадрат рисуется в двух местах (сверху и снизу). В чем дело?

Только в том, что для использования нескольких видеостраниц, их должно быть несколько... Что у тебя?
x:= 9; y:= 2;
...
InitGraph(x, y, 'C:\BP\BGI');
аналогично
x := VGA; y := VGAHi;
А этот режим имеет только одну видеостраницу... Делай
x := EGA; y := EGAHi;
, там их 2...

Кстати, ты неправильно построил саму структуру программы. Поищи на форуме про SetActivePage, были примеры правильного использования... Ты должен сразу после отрисовки видимой страницы подготовить активную, а потом (возможно, после небольшого Delay-я) переключить страницы. У тебя же видеостраницы просто так переключаются, и никакого эффекта от этого нет (движение происходит только за счет ClearDevice и Bar).
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 8.05.2024 2:43
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name