上一页 1 ··· 133 134 135 136 137 138 139 140 141 ··· 191 下一页
摘要: 在第二生里,菜单是缺少不了的。菜单提供了简单层次关系的一种表达方式,方便表达复杂的层次关系,并且方便写说明书,方便售后服务人员的描述,方便培训。因此,在一个程序没有菜单,往往带来很多不方便的地方。登录界面的菜单如下图:从上图可以看到File、Edit、Help几个菜单,那么它是怎么样实现的呢?下面就来分析相关的代码。下面先来看菜单定义的继承关系:class LLMenuItemGL : public LLView可以看到每个菜单项是一个子窗口显示的。下面就来分析菜单项显示的函数:#001void LLMenuItemGL::draw( void )#002{#003 // *FIX: This 阅读全文
posted @ 2008-06-20 23:12 ajuanabc 阅读(209) 评论(0) 推荐(0)
摘要: 在第二人生的登录界面里,可以看到输入密码的下面有一个复选按钮,如下图所示:这个按钮在这里主要用来设置是否帮助用户保存密码在磁盘里的,这样可以使用户每次不用输入密码,就可以登录进去。那么这个按钮是怎么样实现的呢?现在就分析跟这个相关的代码,它的继承代码如下:class LLCheckBoxCtrl: public LLUICtrl可见LLCheckBoxCtrl类也是控件类来的,它主要两部分组成:LLButton和LLTextBox。这两个类都是前面学习过的按钮类和静态文本框。在LLCheckBoxCtrl类声明如下:#001protected:#002 // note: value is st 阅读全文
posted @ 2008-06-19 23:35 ajuanabc 阅读(139) 评论(0) 推荐(0)
摘要: 在登录的画面里,可以看到程序的版本显示,那么它是怎么样显示出来的呢?现在就来分析显示这个版本号的代码,其实它是由静态文本显示框LLTextBox来显示的。比如在登录时创建版本显示的代码如下:这里就是创建静态文本框。#001LLTextBox* version_text = LLUICtrlFactory::getTextBoxByName(this, "version_text");下面是先格式化再显示版本字符串。#002 if (version_text)#003 {#004 LLString version = llformat("%d.%d.%d (%d)& 阅读全文
posted @ 2008-06-18 23:04 ajuanabc 阅读(130) 评论(0) 推荐(0)
摘要: 在第二人生里,从登录的界面可以看到一个组合框,就是选择不同服务器的组件,它就使用到组合框了。其实组合框是由按钮、滚动列表框和编辑框组成的。它的继承关系如下:class LLComboBox: public LLUICtrl, public LLCtrlListInterface同样它也是一个控件类,继承了基类LLUICtrl。从LLComboBox类的声明里,可以看到下面这段代码:#001protected:组合框里的按钮。#002 LLButton* mButton;组合框里的滚动列表。#003 LLScrollListCtrl* mList;#004 LLViewBorder* mBord 阅读全文
posted @ 2008-06-17 22:42 ajuanabc 阅读(149) 评论(0) 推荐(0)
摘要: C++软件开发培训(2008-6-16)1、培养目标l 程序设计入门,懂得怎么使用C++编写简单程序。l 掌握程序设计方法,领会面向过程、面向对象和模板的程序设计。l 熟练地使用C++解决问题。l 每个人看懂1000个例子源码。2、提供的服务l 提供180课学习资料。l 提供EMail和QQ回答学员所有问题。l 提供1000个例子源码,并解答所有相关的提问。3、培训时间与收费每位学员半年培训费用为100元,定期更新讲义,及时回答所有问题。4、招收条件l 拥有QQ号码。l 拥有EMail。联系方式:要加入学习,先添加我的QQ号码(9073204),然后交学费,才能进入群里。加入QQ群号为:134 阅读全文
posted @ 2008-06-16 23:57 ajuanabc 阅读(276) 评论(0) 推荐(0)
摘要: 在基于GUI界面的软件交互时,最基本的输入就是编辑框了,比如下图里输入的用户名称和密码,在游戏界面的编辑框里输入文字是一个高技术难度的问题,因为Windows输入法调用,也是难点之一。那么在第二人生里的用户名称和密码的编辑框是怎么样实现的呢?现在就来分析这部份的代码,它的类继承关系如下:class LLLineEditor: public LLUICtrl, public LLEditMenuHandler, protected LLPreeditorLLLineEditor继续了LLUICtrl类,说明它是一个控件类。它的主要显示代码如下:#001void LLLineEditor::dra 阅读全文
posted @ 2008-06-16 21:57 ajuanabc 阅读(189) 评论(0) 推荐(0)
摘要: 以前安装的时候都没问题,不知道为什么这次就有问题了 运气不佳阿。。 上网看了下 说是一下这种。。。。 Clearlooks configuration option "progressbarstyle" is not supported and will be ignored https://bugs.launchpad.net/bugs/108182 You received this bug notification because you are a member of Ubuntu Bugs, which is the bug contact for Ubuntu. 阅读全文
posted @ 2008-06-16 10:41 ajuanabc 阅读(236) 评论(0) 推荐(0)
摘要: 从前面可以看到怎么样绘制滚动列表框的代码,但在那个函数里面还调用一个函数drawItems来详细地绘制列表项的,现在就来分析这个函数的代码,如下:#001void LLScrollListCtrl::drawItems()#002{计算左上角显示的位置。#003 S32 x = mItemListRect.mLeft;#004 S32 y = mItemListRect.mTop - mLineHeight;#005允许显示最大的行数。#006 // allow for partial line at bottom#007 S32 num_page_lines = mPageLines + 1 阅读全文
posted @ 2008-06-15 21:04 ajuanabc 阅读(120) 评论(0) 推荐(0)
摘要: 在第二人生的UI显示里,滚动列表也使用比较多的,由于多项列表选择的情况下,使用滚动列表往往使用界面使用起来更方便实用。如下面的登录界面,就有使用到滚动列表的控件:从上图里可以看到最右边使用到一个滚动列表来显示不同的服务器,这样方便用户选择不同的服务器登录。那这个滚动列表是怎么样实现的呢?接着下来就分析这个类的代码,类的继承关系如下:#001class LLScrollListCtrl : public LLUICtrl, public LLEditMenuHandler, #002 public LLCtrlListInterface, public LLCtrlScrollInterface 阅读全文
posted @ 2008-06-14 21:41 ajuanabc 阅读(141) 评论(0) 推荐(0)
摘要: 在第二人生里,很多界面的创建是基于XML文件来创建,比如前面提到的登录界面。在一个界面里由很多类型组件组成的,这里就介绍其中最常用的组件是按钮组件了。比如登录界面的连接或者退出按钮,都是从XML里分析出按钮的类型,然后创建按钮的。下面就来分析一下LLButton的XML处理代码,如下:#001LLView* LLButton::fromXML(LLXMLNodePtr node, LLView *parent, LLUICtrlFactory *factory)#002{从XML里获取按钮的名称。#003 LLString name("button");#004 node- 阅读全文
posted @ 2008-06-13 22:25 ajuanabc 阅读(157) 评论(0) 推荐(0)
上一页 1 ··· 133 134 135 136 137 138 139 140 141 ··· 191 下一页