如何使用Graph单元在Turbo Pascal中创建无闪烁动画?

时间:2012-02-26 17:16:37

标签: graph pascal

您好我有以下Turbo Pascal程序:

program problem;
uses crt,graph;
var graphicsdriver,graphicsmode,p,i:integer;
begin
 graphicsdriver:=detect;
  initgraph(graphicsdriver,graphicsmode,'');
  setvisualpage(1);
  setactivepage(0);
  p:=0;
  for i:=1 to 2000 do begin
    outtextxy(round(i/50),100,'test');
    setvisualpage(p);
    p:=abs(p-1);
    setactivepage(p);
    cleardevice;
  end;
end.

程序绘制到一个页面上,只有在完成绘制页面后才会显示页面,而不是显示绘制的页面,直到完成下一个页面。

这应该可行,但它没有,它完美地绘制第一页,但第二页不是从0,0开始,它开始靠近屏幕中间。请帮我解决问题。谢谢你的建议!

1 个答案:

答案 0 :(得分:1)

我的猜测是你的视频卡正在从turbo pascal期望的任何东西返回不同的配置。

图形单元可能根本无法在现代计算机上运行。

我尝试使用free pascal运行此功能。它在正确的位置绘制您的文本,但有各种闪烁。 (FP Graph单元是TP中的一个重写单元,并且它已知是错误的。)

如果是我,我会看看SDL和Cairo,两者都捆绑了免费的pascal。在AggPas处还有一个出色的绘图库。

我不知道他们是否会使用turbo pascal,但免费的pascal是免费的,跨平台。