易码技术论坛

 找回密码
 加入易码
搜索
查看: 164406|回复: 5

所有有NC3000的朋友请来看看

[复制链接]
发表于 2007-3-30 13:09:25 | 显示全部楼层
为啥没人响应呢?
发表于 2007-3-30 13:37:15 | 显示全部楼层
看清楚了,GVmaker手册是这样写的:
Circle 原型: void Circle(int x,int y,int r,int fill,int type);
功能: 在屏幕上画一圆
说明: (x,y)指定圆心,r指定半径。
    type决定画图方式,其值含义如下:
      0:清除方式
      1:正常方式
      2:反相方式
     fill=0:不填充
     fill=1:填充
---------------
Circle不能在缓冲区绘图,所以程序应该这样写:
void main()
{
  int x,y;
  char key;
  x=80;
  y=40;
  while(key != 27)
  {
     ReleaseKey(128);
     key=getchar();
     if(20 == key && y>0)   y--;
     else if(21 == key && y<79)   y++;
     else if(23 == key && x>0)   x--;
     else if(22 == key && x<159)   x++;
     SetScreen(0);
     Circle(x,y,5,1,1);
     Delay(10);
  }
  getchar();
}
发表于 2007-3-31 19:57:27 | 显示全部楼层
好深啊
发表于 2007-3-31 20:47:41 | 显示全部楼层
引用第2楼yan2007-03-30 13:37发表的“”:
看清楚了,GVmaker手册是这样写的:
Circle 原型: void Circle(int x,int y,int r,int fill,int type);
功能: 在屏幕上画一圆
说明: (x,y)指定圆心,r指定半径。
    type决定画图方式,其值含义如下:
.......
正解
PS:有马后炮的嫌疑.......
发表于 2007-4-1 10:07:05 | 显示全部楼层
是啊    你GRAPH缓冲区啥也没有``
画了CIRCLE  ``  
再来个REFRESH```
==CLS!!
 楼主| 发表于 2007-3-26 18:43:36 | 显示全部楼层 |阅读模式
void main()
{
  int x,y;
  char key;
  x=80;
  y=40;
  while(key != 27)
  {
    ReleaseKey(128);
    key=getchar();
    if(20 == key && y>0)  y--;
    else if(21 == key && y<79)  y++;
    else if(23 == key && x>0)  x--;
    else if(22 == key && x<159)  x++;
    ClearScreen();
    Circle(x,y,5,1,0x41);
    Refresh();
  //
    Delay(10);
  }
  getchar();
}
这段代码在GVmakerIDE0.9 和1.1beta,以及星端yan(最新2.08)、gameghost(1.41)编译运行后,按键后屏幕不显示小球。通过printf得知坐标变化正常。

这段代码在LavaXIde中编译运行确可以看到小球移动。

大家有NC3000的可以帮忙试一下~

难道是NC3000上解释器的问题?我用GVmaker+ for NC3000也试过了,同样的问题。谁有NC3000的gvm解释器请给我发一个,ggv上下不了了~wxj.g.sh@gmail.com

要看到小球就要把代码改成
.........
ClearScreen();
Refresh();
Circle(x,y,5,1,1);  //直接在屏幕绘图

lee也进来看看吧~
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-4-30 14:28 , Processed in 0.011985 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表