鼠标移动到物体上,利用label和box来显示提示框的区别

本文探讨了在Unity中使用GUI元素时遇到的一个有趣现象:Label能够正常显示,而Box却出现频繁闪烁的问题。通过分析代码,作者发现这是因为Box元素在鼠标进出时的判断不准确导致的T/F循环所致。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

bool flag;

void Start()

{

flag=false;

}

void OnMouseEnter()

{

 flag=true;

}

void OnMouseExit()

{

flag=false;

}

void OnGUI()

{

if(flag)

{

Debug.Log(flag);//控制台显示flag的值;

GUI.label(new Rect(Inout.mousePositon.x,Screen.height-Input.mousePosition.y,200,200),"123");//按照这种方法,label可以正常显示;

GUI.Box(new Rect(Inout.mousePositon.x,Screen.height-Input.mousePosition.y,200,200),"123");//按照这种方法,box会一直闪现,原因是,程序不能准确判断鼠标是否在物体上,会出现T/F循环;

}

}

至于为什么label正常,而box一直闪现,不知是否与其边框有关,有待研究!个人见解,仅供参考!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值