Symbian开发点滴1(入门和简单的感受)
来源:互联网 发布:淘宝中差评处理掉毛 编辑:程序博客网 时间:2024/04/26 14:34
[原创 2009-05-18 20:01:10] 字号:大 中 小 看了几天Symbian开发,感觉真的复杂,还是微软程序员好干。
先说说开发环境吧,需要安装active perl,Java,s60的sdk和ide
网上文章比较多,搜索一下就找了
这个ide的问题,现在比较推荐carbide c++2。0完全免费的,算是eclipse的,完整的ide。还有一个carbide.vs是一个插件,就可以是vs2003,2005来开发,但是好像nokia已经不发展了。还有一个比较新的就是QT creator,网上的文章说这个太厉害了。有质的变化,提供新的完整类库,原来要写100行代码实现的功能,现在10行就搞定了,呵呵,不过只是技术预览版,而且好像还是收费的版本。所以现在还是先使用carbide2.0吧
Symbian使用c++作为开发语言,但是不是纯c++,里面为了适应手机这样的设备,做了很多更改,比如基本的数据类型,还有类的实例化过程,差别很大,慢慢看了。本来c++就不好。
Symbian提供了3中框架开发模式:基于控件的,视图的,和对话框的。
carbide2.0新建项目向导里面,没有说完全对应的框架,但是提供的那个gui application有点像控件框架的,只是使用view累,也不是container类,反正有点晕。还有一个项目模板是gui application with ui desinger这个可以拖拽控件,但是框架更看不懂了。
我推荐还是使用gui application吧,里面有完整的代码可以响应菜单事件,方便添加新的事件
c++都分头文件H和类文件cpp,头文件h只是声明方法和字段,不实现,cpp文件来实现。
添加控件的时候,控件的代码都要添加在view类里面。
InitComponentArrayL();
iLabel = new(ELeave)CEikLabel();
iLabel->SetContainerWindowL(*this);
iLabel->SetTextL(_L("Simple Label"));
iLabel->SetExtent(TPoint(10,10),TSize(150,30));
Components().AppendLC(iLabel);
CleanupStack::Pop(iLabel);
一个小例子。添加label的。
当然这样做是比较麻烦,在control类中添加两个函数,就不需要每次都写组件添加了
声明这两个:
TInt CountComponentControls() const;//返回控件的数量
CCoeControl* ComponentControl(TInt aindex) const;//根据aindex的不同,返回空间的指针。
比如这样:
TInt CHelloLabelAppView::CountComponentControls() const
{
return 2;
}
CCoeControl* CHelloLabelAppView::ComponentControl(TInt aindex) const
{
switch(aindex)
{
case 0:
return iLabel1;
case 1:
return iLabel2;
default:
return NULL;
}
}
还有就是include的问题。一个类如果用过其他类,不如sdk的标准类,就要添加include <.h>文件
如果用到类库还要添加lib文件,就是在group文件下的mmp文件,可以在carbide下有图形界面的添加,也可以直接去文本编辑器里面添加了。很好找到
- Symbian开发点滴1(入门和简单的感受)
- Symbian开发入门(一) symbian简介
- Symbian OS开发入门(一) :基于VS.Net 2003的Symbian开发环境的准备
- Symbian OS开发入门(二) :VS2003环境下Symbian工程的导入与建立
- 【转】Symbian OS开发入门(二) :VS2003环境下Symbian工程的导入与建立
- [Symbian开发入门]Symbian和C++ SDK开发入门之工具
- 五小时Symbian开发入门(转)
- 五小时Symbian开发入门(转)
- symbian开发入门(环境配置...)
- Symbian开发入门(VC 6.0)
- [转贴]Symbian OS开发入门(一) :基于VS.Net 2003的Symbian开发环境的准备
- 【转】Symbian OS开发入门(一) :基于VS.Net 2003的Symbian开发环境的准备
- Symbian开发入门
- Symbian开发入门
- Symbian开发入门
- symbian系统开发入门
- Symbian开发入门
- Symbian开发入门
- SQL触发器实例讲解
- 深入探讨 Java 类加载器
- Ubuntu:让桌面显示回收站
- 全国计算机技术与软件专业技术资格(水平)考试
- 读取资源文件的三种方式
- Symbian开发点滴1(入门和简单的感受)
- 摘要目录 --基于mkCDrec的核心网网络运维系统的备份和恢复的研究与实现
- C# 中的委托和事件
- OpenGL下的场景层次化渲染
- linux2.6.18 root=/dev/mtdblock/3 不能启动原因和解决方法
- Java解读内存,优化编程
- Array Values 数组
- 循环语句 for
- php程序员面试题(一)