作者:
Bradley
如今,人们的沟通和生活方式已经发生了巨大的变化。看看身边的朋友,少不了拥有手机、PDA等数码产品,其中有些产品还使用了Windows CE操作系统,要为这类移动设备尤其是掌上电脑等编制应用程序是不是很困难呢?其实如果用Visual Studio .NET 2003开发则比较容易。本文就此用最简单的方式告诉大家如何来为移动设备开发应用程序,以及它和开发普通的Windows平台应用程序的异同所在。
弹指之间
——设定程序类型
运行Visual Studio .NET 2003,选择File|New|Project菜单项建立一个新项目。选择Visual C# Projects文件夹,在右侧选择Smart Device Application(如图1所示)。
这里我将我的程序命名为MyMobileApp,保存在默认位置。当然,你也可以为你的移动程序取任何你喜欢的名字。
选择对话框的OK按钮将打开设计向导。在这个对话框里你可以选择生成PocketPC或是Windows CE应用程序。你还可以选择应用程序类型。在这个例子里你将选择Pocket PC并建立Windows Application应用程序。
你还可以看到这个对话框里列表显示了你的电脑上所安装的设备。你可以看到我的Pocket PC设备是一个模拟器。如果你没有移动设备,还是可以使用模拟器来建立应用程序,就像这个例子里你要做的那样。
选择Pocket PC和Windows Application,点击OK按钮,Visual Studio .NET 2003将忙碌片刻然后生成一个标准项目。
基本的PocketPC窗体看起来就像一个普通的Windows窗体。从开发视图来看,更是几乎一模一样。惟一的不同就是有些控件和命令不能使用。此外,在工作空间里可以看到一个现成的菜单组件。
穿新鞋走老路
——建立应用程序
当我使用新的集成开发软件、设计平台或编程语言时,我都会建立一个简单的标准化的“hello world”程序。这个简单程序只包含一个按钮、一个文本框和一个标签。点击按钮将复制文本框中的文本并在标签上显示。虽然这个程序的实际意义非常有限,但它却包含了建立标准窗体应用程序的基本要素。
首先改变你的程序的一些属性。点击窗体可以显示窗体属性。将窗体名称改为MyMobileAppForm,把Text属性改为“My Mobile App”。
就像你在普通Windows窗体应用程序中所做的那样,添加标签、文本框和按钮。本实例的文本框和标签保留默认名称即可。按钮的Text属性改为“Do It”。你的窗体看起来应该像图2这样(注意这里没有显示整个编程软件)。
现在窗体已经设计好了,还需要添加一些代码。仍然按照你在标准应用程序中做的那样,双击按钮并在click事件中添加代码。button1_Click事件将被放置于Form1.cs文件中。为这个方法添加如下黑体字所示代码:
private void button1_Click(object sender, System.EventArgs e)
{
label1.Text = textBox1.Text + "\n" + label1.Text;
textBox1.Text = "";
}
你会发现这段代码非常简单。第一行语句把文本框的当前文本放置到标签的开头。另起一行以分开新旧标签文字。
第二行语句用于清除文本框中的文字。你会发现,当你输入这些语句时,会出现智能提示信息帮助你编程。只有在你的标准程序中建立移动程序时,这些智能提示信息才会出现。这行语句简单地清除文本框。
接着按下F5键编译你的程序,或者选择Debug菜单下的Start选项。要注意的是如果出现错误,最好检查一下代码以确保输入正确。另外,我发现在窗体的属性窗口里改名后Main方法里的Form1并不总会自动改名,这时你就需要把它改成MyMobileAppForm。
如果没有出现错误,窗体将被编译并部署。在编译窗口你将看到以下信息:
------ Deploy started: Project: MyMobileApp,
Configuration: Debug Pocket PC ------
过几秒钟(或几分钟,取决于你的电脑配置),将弹出一个对话框。
在这个对话框里你可以选择一个连接在电脑上的可用设备进行部署。如果你有一个设备,只要连接在电脑上,就可以在上面安装应用程序。如果没有,你就只能在Pocket PC 2002 Emulator模拟器上部署程序了。
特别的壳给特别的你
——运用模拟器运行应用程序
选择模拟器并点击Deploy按钮。当应用程序下载到模拟器时,你的系统又要忙碌一阵子。模拟器第一次载入时,看起来像是标准的PocketPC显示器。程序下载过程中你只能继续等待。一旦下载完毕,你的模拟器将如图3所示。
如你所看到的那样,模拟器的外观和操作方式就像一部真正的掌上电脑。你可以在文本框里输入文字并按下Do It按钮,将会看到文字被添加到标签上。所有运行效果都和预期的一样。
接着关闭模拟器窗口。这时你会被询问是保存模拟器状态还是直接关闭。如果保存了模拟器状态,在你从Visual Studio .NET 2003重新运行程序的时候,模拟器将启动得更快。
再丰富一点
——添加菜单
在结束程序之前,还需要做一件事情。要为你的程序添加一个PocketPC菜单。回到集成开发界面,打开设计器并显示窗体。你的程序包含一个默认的mainMenu1组件。当你右键点击mainMenu1组件时,你会发现设计区里的窗体发生了变化,有一个区域出现了Type Here字样。你可以点击该字样并输入菜单名字以建立你的菜单组件。在你输入菜单名字的时候,这个菜单项的旁边和上面都将出现新增的菜单项。在主文本框里输入“Do It”。
双击Do It菜单项就可以添加代码。此操作将在代码窗口里建立menuItem1_Click方法。本实例中你需要为这个方法添加以下代码行:
button1_Click(sender, e);
此语句将调用与Do It按钮相同的代码。
现在你可以重新编译并运行程序。你将看到运行界面和原来一样,但窗口底部多了一个Do It菜单。当你点击Do It菜单项时,运行效果和点击Do It按钮相同——正如你所编的代码。
如果出现部署错误,就要检查一下现在模拟器所运行的程序是否为前一个版本。如果你保存了模拟器状态而非直接关闭就可能发生这种情况。点击关闭按钮(右上角的×按钮)即可关闭模拟器上运行的程序,然后才能运行新的程序。
小结
正如大家所看到的那样,设计一个PocketPC或者Windows CE应用程序与建立普通的Windows平台应用程序十分相似。当然,你肯定会受到特定设备的限制,比如小一点的输入屏幕,而且缺少一些操作方法和功能。这篇简单的入门文章并不能面面俱到,但你会发现,按本文所述对移动设备进行编程,就和编写标准(非移动)Windows程序差不多。
在Visual Studio 2005中微软进一步加强了移动程序开发功能。和你在前面的开发环境中所看到的简单的方框形窗体不同的是,你将看到的东西会更像实际的设备。这样你可以更容易看清程序在特定设备中的运行情况。实际上,新的Visual Studio中不同的设备将显示不同的外观。