Irrlicht学习备忘录——5 UserInterface

本文档详细介绍了Irrlicht游戏引擎中的用户界面元素,包括窗口、按钮、滚动条等,并探讨了如何处理GUI事件,以及如何自定义事件接收器。文章提到了Irrlicht GUI的局限性,指出需要自定义扩展才能实现美观和功能需求。还讨论了字体设置和GUI透明度的调整方法,以及扩展GUI元素的可能性。
摘要由CSDN通过智能技术生成

5 UserInterface

官方代码($sdk)\examples\05.UserInterface


这个例子是讲irr引擎的用户图形界面。里面只演示了窗口、按钮、滚动条、静态字体和列表框这几样常用的图形界面元素,其实这已经是irr用户图形界面的大部分内容了。irr用户图形界面,个人认为是鸡肋。用它,它太难看了,想要让它好看,得自己写扩展,这基本等于用irr的接口规范自己从新做一遍用户图形界面的基本元素。不用,得自己重新找一套GUI来和irr结合,使用起来不一定有irr原生的那么简单。下面看具体如何使用irrGUI

使用GUI一般都会产生一些用户反馈的交互信息,这些信息就是GUI事件。要想对这些GUI事件进行处理,首先就得获取这些事件。获取GUI事件最简单的方法就是上一个例子里用到的事件接收器,事件接收器所接收的事件就包括GUI事件,只是上个例子里没有使用而已。本例里同样自定义了一个MyEventReceiver事件接收器,只是这次的OnEvent方法里处理的事件换成了EET_GUI_EVENT事件。接收到的GUI事件是以SGUIEvent数据结构存储的。

structSGUIEvent

{

产生GUI事件的GUI元素Caller

gui::IGUIElement*Caller;

Caller一起产生事件的GUI元素,一般不用

gui::IGUIElement*Element;

GUI事件的类型

gui::EGUI_EVENT_TYPEEventType;

};

GUI事件类型定义在EGUI_EVENT_TYPE

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值