`
guowee
  • 浏览: 173665 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Windows Mobile 今日插件开发

阅读更多

http://blog.csdn.net/doubleblue/archive/2009/04/14/4073618.aspx

 

Windows Mobile 今日插件开发

一、概述  

Windows Mobile 今日插件,主要是用 C++ VC++ 实现的。在 microsoft msdn 上有关于今日插件的开发样例,该样例其实是 CF 调用 C++ 写的类 , 通过网页来实现的。

有以下几个缺点 :

1. 不能把今日插件设置成透明的;

2. 控件定位十分困难;

3. 部署的时候比较麻烦。

该样例代码可到: http://msdn2.microsoft.com/en-us/library/ms839442.aspx 下载。

本文主要介绍 ChrisTec 今日插件,该插件用 C# 语言实现。该插件特点是开发简单,仅仅开发出一个自定义用户控件就可实现。下面将介绍如何通过该插件实现今日提醒。

二、开发环境

    vs2005+windows mobile6.0

三、开发步骤

1 、下载 ChrisTec 今日插件框架包

该插件的下载地址:

http://managedtodayscreen.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=10947

ManagedTodayScreenItem-Alpha2.zip 文件里包含三个文件,分别是 ChrisTec dll 、框架包 cab 及样例 cab 文件。

ManagedTodayScrenItem-src-Alpha2.zip 文件是 ChrisTec 源代码文件夹,里面包含 dll 、框架包 cab 及样例包 cab 工程。

2 、创建今日插件工程

打开 vs2005 vs2008 没有测试过),选择“新建 -> 项目 -> 智能设备 ->WM6->control library , 输入工程名“ Today ”,点击“确定”按钮创建工程,如下图所示。

 

 

3 、创建今日插件用户控件

       1 )在初始化方法 InitializeComponent() 里,

修改用户控件大小: this .Size = new System.Drawing.Size (240, 20);

        添加重绘事件:

this .Paint += new System.Windows.Forms.PaintEventHandler(this .UserControl1 _Paint);

2 )添加资源文件

右击“ Today ”工程,选择“添加 -> 新建项 -> 资源文件”,输入资源文件名称“ Resource ”,创建完毕后,双击“ Resouce ”,添加图像文件“ search ”。

3 )在 UserControl1 类里

添加 UserControl1_Paint 重绘方法:

private void CurrentTimeCtl_Paint(object sender, PaintEventArgs e)

          {

            Graphics graphics = e.Graphics;

            using (Brush brush = new SolidBrush (Color .White))

            {

                // Resource.search 是一个待显示的bmp 图像,定义在Resource 资源文件里

                graphics.DrawImage(Resource.search, 3, 3);

 

                //text 待显示的文件

                graphics.DrawString(text, Font, brush, textRect);

            }

} 

添加鼠标点击事件方法:

protected override void OnMouseUp(MouseEventArgs e)

           {

            //base.OnMouseUp(e);

             Point pt = new Point (e.X, e.Y);

            if (this .ClientRectangle.Contains(pt))

            {

                MessageBox .Show(" 今日插件测试" );

            }

            Invalidate();

}

4 )添加引用及注解

        添加“ Christec.WindowsMobile.TodayScreen.dll ”引用:

            UserControl1 类引用该 dll using ChrisTec.WindowsMobile.TodayScreen;

         添加注解:

UserControl1 类定义上面定义注解,该注解与 dll 文件定义的 TodayScreenItem 相对应,该注解不可缺少。

[TodayScreenItem ("UserControl1" )]

         public partial class UserControl1 : UserControl

{

}

4 、创建今日插件 cab 工程

       1 )给 Today 工程创建 cab 工程,输入工程名“ TodayTest

 

 

2 )添加输出

             右击“ TodayTest ”工程,选择“添加 -> 项目输出”,在弹出的“添加项目输出组”里,选择“主输出”,点击“确定”按钮。  

3 )给主输出添加文件夹

 

          双击“主输出来自 Today (活动)”选项. 在弹出的选项卡里 添加文件目录“ %CE1%/Managed Today Screen Framework” ,该文件目录与 ChrisTec 框架 cab 包的安装目录保持一直。

4 )给 Managed Today Screen Framework 文件夹添加文件

     添加文件: ChrisTec.WindowsMobile.TodayScreen.dll

 

5 )修改主输出文件目录

             右击“主输出来自 Today (活动)”选项,选择“属性”,在属性的 Folder 选项里,选择“ Managed Today Screen Framework ”。

 

       编译 Today TodayTest 工程,生成 TodayTest.cab 安装包。

5 、安装 ChrisTec.WindowsMobile.TodayScreen-Framework.CAB TodayTest.cab

       1 )将 ChrisTec.WindowsMobile.TodayScreen-Framework.CAB TodayTest.cab 包拷贝到真机或模拟器上;

2 )安装 ChrisTec.WindowsMobile.TodayScreen-Framework.CAB

3 )安装 TodayTest.cab

4 )重置模拟器或真机。

本样例在模拟器上的显示结果如下图所示:

 

 

6 、结论

       本文主要介绍今日插件的简单用法,有错误的地方,请指正。另外,本文样例仅仅是在模拟器上经过验证,在真机上没验证。在模拟器上的结果图:

 

          

 

    源代码下载地址:http://download.csdn.net/source/1210620

 

7 、参考资料

1 http://www.christec.co.nz/blog/archives/279 ;

2 http://hi.baidu.com/ny_dsc/blog/item/0add58559cdac950d00906f8.html ;

3 http://topic.csdn.net/u/20070610/09/33ccbf4c-b841-488b-be70-0824e2e1935b.html ;

4 http://managedtodayscreen.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=10947

分享到:
评论

相关推荐

    所有代码Windows Mobile今日插件开发 -- 内存电量,桌面便笺,桌面记单词

    本篇文章讲解的是开发 Windows Mobile 上的今日插件。关于是今日插件,在 PPC 或者 SP SDK 的帮助文档中有相关的章节介绍,在网络上也有一些帖子和资源讲解。在这里简要回顾一下。今日插件就是在windows mobile的...

    Windows Mobile 今日插件

    本文主要介绍ChrisTec今日插件,该插件用C#语言实现。该插件特点是开发简单,仅仅开发出一个自定义用户控件就可实现。

    开发Windows_Mobile今日插件.doc

    开发Windows_Mobile今日插件定制开发等等

    windows mobile 应用程序开发实践

    windows mobile 应用程序开发实践 提供了书中的部分代码

    windows mobile webkit plugin开发指南

    webkit引擎下plugin开发指南,基于NPAPI标准接口,测试平台为window mobile6,本人测试的时播放wma音频文件插件,压缩文件内未提供源码,只提供了一个指南的文档和一个plugin框架源码,可根据实际情况添加需要的功能...

    jQuery Mobile 插件 v1.0.1 官方正式版.rar

    经历了近一年时间开发的jQuery Mobile正式版1.0终于发布了。jQuery Mobile建立在jQuery Core和jQuery Ui之上,是适用于移动设备的JS框架。作用在于能为智能机,平板机,电子阅读器,台式机等众多平台,提供以HTML5...

    JQuery.Mobile.chm 中文

    2兼容于所有的主流移动设备:iOS, Android, Blackberry, Palm WebOS, Nokia/Symbian, Windows Mobile, bada, MeeGo . 3轻量级 压缩后只12k,对图片的依赖程度非常低,保证了速度 4页面和行为均基于html5标记的驱动...

    SRS WOW HD音效插件

    最新1.5.1.0版本的Windows Mobile 6.5平台的音效插件,可用於最新的 HTC HD/Dimand2/HD2手機 SRS WOW HD音效插件很强大,SRS SRS(Sound Retrieval System)是由SRS研究所开发的、最具代表性的3D立体声技术。该技术的...

    Heritrix lucene开发自己的搜索引擎(源码)1

    自行开发的Heritrix的FrontierScheduler类:163mobile 安装:直接在Eclipse中选取“import->Existing Project” Eclipse工程/testDWR:原书第十三章的工程文件 完整的DWR开发环境 DWR在页面调用后台Bean类的实例...

    一个Flutter插件来处理Android / iOS相机-Flutter开发

    CamerAwesome包括许多有用的功能,例如::mobile_phone_with_arrow:实时摄像头翻转(无需重建即可在前后摄像头之间切换)。 :high_voltage:不需要初始化,只需添加CameraAwesome小部件! Instant即时聚焦。 :camera_...

    开发自己的搜索引擎lucene and heritrix

    自行开发的Heritrix的FrontierScheduler类:163mobile 安装:直接在Eclipse中选取“import->Existing Project” Eclipse工程/testDWR:原书第十三章的工程文件 完整的DWR开发环境 DWR在页面调用后台Bean类的实例...

    java版按键精灵源码-rhostudio:用于开发Rhodes和RhoConnect应用程序的Eclipse插件

    插件,用于促进移动应用程序的开发。 使用 RhoStudio 来: 生成 Rhodes 应用程序 生成 Rhodes 模型和关联的控制器和视图模板 使用 Eclipse UI 管理构建配置(build.yml 和 rhobuild.yml) 在 iPhone、Android、...

    新版Android开发教程.rar

    Mobile Mobile Mobile Mobile Operators Operators Operators Operators 移动运营商类 China Mobile Communications Corporation 中国移动通信 KDDI CORPORATION 日本 KDDI 电信 NTT DoCoMo, Inc. 日本多科莫电信 ...

    mydeck:使用完全可自定义的虚拟键盘和按钮w操作轻松控制计算机。 :mobile_phone:| 多达150个按钮| 插件即将推出| 跨平台

    :mobile_phone: 借助此完全可定制的Deck Buttons Board(如宏键盘,但可配置)轻松控制您的计算机。 支持可通过插件扩展的自定义动作。 在Windows,MacOS,Linux(台式机)和Android,iOS(配套应用程序)上可用。...

    Heritrix lucene开发自己的搜索引擎(源码)3

    自行开发的Heritrix的FrontierScheduler类:163mobile 安装:直接在Eclipse中选取“import->Existing Project” Eclipse工程/testDWR:原书第十三章的工程文件 完整的DWR开发环境 DWR在页面调用后台Bean类的实例...

    Google Android SDK开发范例大全(完整版)

    虽然没有 Eclipse 和 Android Developer Tools 插件也可以开发 Android 应用程序,但是那样就需要熟悉 Android SDK。 Android SDK 是作为一个 ZIP 文件发布的,可以将该文件解压到硬盘上的一个目录中。由于有多个 ...

    repairshopr-mobile-app:repairshopr-mobile-app是仅用于移动设备的api的phonegap应用程序

    开发的东西 去做: 插件支持 相机支持 通知支持 运行项目 Andorid和Windows Phone -必须在新构建上更新您的自我 -自动更新(仅适用于Android) 的iOS 从应用商店“ PhoneGap Developer”安装应用 加载应用程序...

    cordova插件闪屏:Apache Cordova插件闪屏

    标题描述开机画面控制您的应用程序的启动屏幕。 AppVeyor 特拉维斯CI科尔多瓦插件闪屏在您的Web应用程序启动时,此插件显示和隐藏... 如果专门为iOS平台开发,则可以卸载此插件。 Windows(需要cordova-windows版本> =

    MCMS内容管理系统 v4.5.2.zip

    终端统一: 铭飞MCMS支持PC与MOBILE皮肤定制,同时使用MS团队移动JS插件,轻松实现手机多屏幕适配,想想看你发布的信息第一时间在PC上展示又能在手机上展示,这是件多么幸福的事情,数据统一、平台统一、终端统一是MS团队...

Global site tag (gtag.js) - Google Analytics