博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
『原创』用C++开发WM应用系列(1)——"Hello World" Pro!(上)
阅读量:6082 次
发布时间:2019-06-20

本文共 1847 字,大约阅读时间需要 6 分钟。

引言:

  其实,在很久之前,就想涉足Native C++的WM开发,无奈自身的C++水平仅限于大学时的应试阶段,所以,特别的潜心修炼,重新炒炒回锅肉,终于,小有成就,特此拿出来,供各位朋友一起分享,特别是针对初学c++又想搞WM开发的朋友。我的这一系列的文章,也会以一个初学者(我也不是高手)的角度,一步一步介绍如何在Native C++语言环境下,进行WM的一般开发。

  当然,为了照顾到和我一样的入门学者,我在随笔中也会花部分精力为大家将就介绍一些c++的知识,稍显罗嗦,不过还请海涵啊~呵呵!再一点,本文也是针对那些已经有c#语言开发WM应用的朋友,如果没有这方面的基础,估计是有点难!

 

正文:

  世界上最俗气的入门程序,莫过于“你好,世界!”(Hello World!)了(发现中文要比英文少敲好几个按键啊~呵呵),在此呢,Jack也是不能免俗,拿这个最通俗易懂的例子,来和大家一起进入今天的随笔。我们要用vs2008,使用c++语言,建立一个智能设备项目,而项目模板则使用MFC,如下图:

1-选择语言、项目模板以及项目类型,输入我们的项目名称“HelloWorld”

   2010020221260427.png

2-注意我们选择Windows Mobile 5.0 Pocket PC这个SDK来作为我们的实例SDK:

  2010020221261741.png

3-选择应用程序类型为“基于对话框”

  2010020221280698.png

  什么是MFC呢?我建议大家自己查查资料吧,说起来,真的太多太广了!当然,我也是初学,红皮书这么告诉我的,那么我也就按部就班的建立起这个项目了。

tips:什么是MDI、SDI及对话框?

参考链接(有图有真相):

  至此,我们建立了一个新的基于“对话框”的MFC移动应用程序,可以看到,右侧的解决方案资源浏览器,有几个文件夹,什么头文件、源文件这些的,请你参考<Visual Studio 2005 c++ 入门经典>一书,上面详细的介绍了这些文件夹的作用以及关系。在此就不赘述了。

  我们打开一个叫做“资源视图”的窗体,应该如下图所示:

  2010020221291943.png

  你可能会对这写内容感兴趣,但是在此限于篇幅,请各位朋友自行查阅一些资料,去了解这个“资源”是回什么事儿,它对于这个项目有什么用,我们可以怎么来用它~等等。那么,我们双击上图中标出的菜单,在主编辑区可以看到一个熟悉的界面打开了,还可以从工具栏拖动控件到这个界面上,是不是有点Delphi的味道?到这里,我就不多说了。想必大家已经把一个Button按钮放到界面中了吧。

  2010020221301973.png

  好的,如果我们要对这个按钮进行事件的添加,突然发现,不能像c#中双击控件了,这里,我们要按照MFC的规则,来给控件添加“事件处理程序”,在MFC中,这种方式很常见,它用一个向导型的过程,帮助我们创建这些方法及代码。具体流程如下图:

1-右键单击我们的Button1按钮,在上下文菜单中选择“添加事件处理程序”:

  2010020221320374.png

2-在新窗口中,设置消息类型、此消息位于哪个类,以及函数处理程序的名称:如下图红色框所示

  2010020221414670.png  

  OK,至此,我们学会了如何在MFC中为控件创建相应代码和方法,那么我们就开始来写代码吧,很简单,就是在刚才的那个方法体内,写入如下代码:

  

void CHelloWorldDlg::OnBnClickedButton1(){	MessageBox(L"Hello World",L"Tips",0);}

  接下来,编译、生成、运行一下!

  是不是成功了呢?!别高兴,在此我们还有些东西不明白,不过不急,我们是初学者,先有个感性的认识再说其他的吧。这篇随笔就到这里,下一篇中,我将和大家一起分享如何使用类、函数以及成员变量,来扩充我们的这个“你好,世界!”程序!

 2010020222011290.png

总结:

我们学会了:

  1. 使用VS2008创建一个基于MFC的智能设备应用项目
  2. 我们了解了MDI、SDI及对话框的概念
  3. 我们学会了为控件添加“事件处理程序”
  4. 我们学会了为程序添加功能代码  

问题:

我们看到:

  1. 为什么那个MessageBox方法中的那些字符串之前要加个L呢?其实我们自己下来查下资料就知道了。这里推荐一篇吧:
  2. 为什么添加事件那么麻烦,还引入了一个“消息处理”的概念?其实这个跟MFC的一些基础知识有关,我们也许要自己下来查阅一下关于MFC的基础知识,相信大家能够理解。

后记:

在下一篇随笔中,我会去扩展这个基础的程序功能,我们将新建一个类,为这个类添加方法、属性,让程序调用这个类,来进行一些简单的计算。

转载地址:http://zvkwa.baihongyu.com/

你可能感兴趣的文章
epoll的lt和et模式的实验
查看>>
Flux OOM实例
查看>>
07-k8s-dns
查看>>
Android 中 ListView 分页加载数据
查看>>
oracle启动报错:ORA-00845: MEMORY_TARGET not supported on this system
查看>>
Go方法
查看>>
Dapper丶DapperExtention,以及AbpDapper之间的关系,
查看>>
搞IT的同学们,你们在哪个等级__那些年发过的帖子
查看>>
且谈语音搜索
查看>>
MySQL数据库导入导出常用命令
查看>>
低版本Samba无法挂载
查看>>
Telegraf+Influxdb+Grafana构建监控平台
查看>>
使用excel 展现数据库内容
查看>>
C#方法拓展
查看>>
MySql.Data.dll的版本
查看>>
Linux系统磁盘管理
查看>>
hdu 2191 (多重背包+二进制优化)
查看>>
home.php
查看>>
neo4j---删除关系和节点
查看>>
redis分布式锁redisson
查看>>