『第 6 楼』:
 
 
使用 LLM 解释/回答一下
  
帅哥: 
我写的程序,为何无法显示 
我想改变鼠标的默认图标,利用33h的调用。 
程序如下 
struct shape 
  { 
   unsigned char shape; 
   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的位图是如何在数组中排列,这一点我不懂, 
所以毫无头绪,希望那为大侠给予指点。 
 
    谢谢!!!!急急急 
 
    
 
  
 |