我要投稿

C++ 基于CEGUI的StaticText的超级链接实现

时间:2010-07-26 20:36 作者:ceshi123 阅读:2029

扫描二维码关注公众号,可以查询淘宝、京东商品优惠券
  基本上实现一个基于静态文本多任务的过程.

  目的:游戏制作过程中一般打开NPC会弹出一个对话框,一般对话框就是显示一段话,有图片,超链接,文字,同时文本分别有不同的颜色!

  那么只要我们输入一段文本,对话框的控件解析文本定义好的标签然后显示所有文本内容和图片即可。

  实现方式:

  1.超链接控件既要响应点击消息,又要有超级链接标记的下划线。实现方式主要参考了Button的Clicked事件,StaticText的render渲染过程,重新写的一个基于超级链接组件。

  2.文本解析利用了当前CEGUI的版本的BasicRenderedStringParser类,我们只需要继承此类,然后设置系统默认的文本解析类为我们当前的类。

  3.写超级链接组件的渲染过程主要方便支持CELayoutEditor的可视化编辑。

  实现结果:

  1.文本显示颜色。

  2.换行操作。

  3.支持超级链接的显示,以及事件响应和事件处理,事件响应为CEGUI::HyperText::EventClicked。

  4.超链接的下划线绘制。

  5.支持图片显示和支持图片事件响应。

  假设我们的解析文本如下:

  标签定义如下

  [N]则是换行字符

  [C]字体颜色

  [A]超级链接

  [M]图片

  相对来说编写此文本比较简单.

  具体用法

  xxx             显示文本xxx

  [C  XX]      xx表示32位的字体颜色

  [A 1: XX]   xx 超级链接显示内容。

  [M  xx]       xx表示图片名字

  colorTest:[N]

  StaticTxt test1![N]

  [C FFFF0000]StaticTxt test2!    [N]

  [C FFFFFF00]StaticTxt test3!   [N] [N] [N]

  [C FFFF0000]HyperLink Test:  [N]

  [A 1:this is the Hyperlink!this is the  Hyperlink!][N]

  [A 2:this is the second Hyperlink! this is hyperlink!!!][N]

  [A 3:this is the third hyperlink!this is hyperlink!this is hyperlink!this is hyperlink!]

  [N] [N] [N]

  Image Text:[M 381] [M 286] [M 669]

  具体过程:




  后期目标支持动画的显示,比如GIF格式图片.

  实现过程相对繁琐,而且涉及datafiles配置一些处理。

  可能真正游戏界面上的实现可能会更丰富,其实也就是增加几个标签然后解析即可。

关键词: 系统

最新评论

我要投稿 我要评论
插入url链接 添加表情
限 100000 字节
响应相关主管单位规定,关闭回帖发帖功能
[VB毕业设计] [ASP毕业设计] [JAVA毕业设计] [JSP毕业设计] [PHP毕业设计] [asp.net毕业设计] [.net毕业设计] [网络毕业设计] [Delphi毕业设计] [VC毕业设计] [VF毕业设计] [机械毕业设计] [工艺毕业设计] [模具毕业设计] [其他毕业设计]
站长联系 cccbbsnet#163.com 本站系公益性质网站,站内广告维系本站运作。欢迎赞助本站。
大学生计算机相关方向|软件编程|网络工程|web开发|数据库技术|学习资料等
本社区仅供学习计算机相关技术所使用,访客发言不得违反国家法律法规
Time now is:10-18 11:42, Gzip enabled 蜀ICP备07004838号Powered by cccbbs.net v7.5 SP3 Code © 2003-06 cccbbs
计算机毕业设计