中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » 金狮兄帮帮俺啊!!!如何改变鼠标的默认光标形状[求助]
作者:
标题: 金狮兄帮帮俺啊!!!如何改变鼠标的默认光标形状[求助] 上一主题 | 下一主题
boblhh9999
中级用户




积分 316
发帖 74
注册 2004-3-4
状态 离线
『楼 主』:  金狮兄帮帮俺啊!!!如何改变鼠标的默认光标形状[求助]

我想改变鼠标的默认图标,利用33h的调用。
程序如下
struct shape
  {
   unsigned char shape[32];
   char hotx;
   char hoty;
  };

struct shape ARROW={
      {
      
       0x3fff,0x1fff,0x0fff,0x07ff,
       0x03ff,0x01ff,0x00ff,0x007f,
       0x003f,0x00ff,0x01ff,0x10ff,
       0x30ff,0xf87f,0xf87f,0xfc3f,
       0x0000,0x7c00,0x6000,0x7000,
       0x7800,0x7c00,0x7e00,0x7f00,
       0x7f80,0x7e00,0x7c00,0x4600,
       0x0600,0x0300,0x0300,0x0180           
      },
      0,0,
     };

void mouse_shape(struct shape sp)
{
  struct SREGS sr;
  union REGS r;
  union REGPACK re;

  r.w.ax=0x00;
  int386(0x33,&r,&r);
  r.w.ax=0x09;
  r.w.bx=sp.hotx;
  r.w.cx=sp.hoty;
  r.x.edx=FP_OFF(&sp.shape);
  segread(&sr);
  sr.es=FP_SEG(&sp.shape);
  int386x(0x33,&r,&r,&sr);
  r.w.ax=0x01;
  int386(0x33,&r,&r);      
}

但显示不正常,
关键是鼠标的16*16的位图是如何在数组中排列,这一点我不懂,
所以毫无头绪,希望那为大侠给予指点。

    谢谢!!!!急急急


[此贴子已经被作者于2004-6-7 下午 04:42:16编辑过]




2004-6-3 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qb45
高级用户




积分 677
发帖 194
注册 2003-9-13
状态 离线
『第 2 楼』:  

要QBASIC的原程序吗?



我(QB45)的照片与简历
http://www.programfan.com/club/showbbs.asp?id=197280
2004-6-7 00:00
查看资料  发送邮件  发短消息 网志  OICQ (406930019)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: