改变鼠标样式

1、第一个直接改变鼠标样式

[javascript]  view plain  copy
  1. #pragma strict  
  2. public var cursorTexture:Texture2D;  
  3. private var changeFlag = false;  
  4. function Update(){  
  5.     if(changeFlag){  
  6.         Cursor.SetCursor(cursorTexture,Vector2.zero,CursorMode.Auto);  
  7.     }else{  
  8.         Cursor.SetCursor(null,Vector2.zero,CursorMode.Auto);  
  9.     }  
  10. }  
  11.   
  12. function OnGUI(){  
  13.     if(GUI.Button(Rect(10,10,100,50),"hand")){  
  14.         changeFlag = true;  
  15.     }  
  16.     if(GUI.Button(Rect(120,10,100,50),"arrow")){  
  17.         changeFlag = false;  
  18.     }  
  19. }  

2、隐藏鼠标,在鼠标位置放一新图片

[javascript]  view plain  copy
  1. #pragma strict  
  2. public var cursorTexture:Texture2D;  
  3. private var changeFlag = false;  
  4.   
  5. function OnGUI(){  
  6.     if(GUI.Button(Rect(10,10,100,50),"hand")){  
  7.         changeFlag = true;  
  8.         Screen.showCursor = false;  
  9.     }  
  10.     if(GUI.Button(Rect(120,10,100,50),"arrow")){  
  11.         changeFlag = false;  
  12.         Screen.showCursor = true;  
  13.     }  
  14.     if(changeFlag){  
  15.         var mousePos = Input.mousePosition;  
  16.         GUI.DrawTexture(Rect(mousePos.x,Screen.height - mousePos.y,cursorTexture.width,cursorTexture.height),cursorTexture);  
  17.     }  
  18.       
  19. }  

需要注意几点的是:用第一种方法中的鼠标图片要修改图片导入的属性,即在inspector中的Texture Type要改为Cursor,否则鼠标会显示不正常。

第二种方法中,在unity编辑器中运行的时候,当改变鼠标样式后,默认的鼠标箭头样式不会消失,但是发布之后就没有什么问题了。

你可能感兴趣的:(Unity)