`
lingzantia
  • 浏览: 150058 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

[翻译]-WinCE 程序设计 (3rd 版)--1.4 Hello2

阅读更多

Hello2
既然已经有了基础,那么是时候把Hello1升级一下,至少应该让人可以看见它。因为很多Windows CE系统没有控制台驱动程序,Hello2创建一个消息框而不是用printf来显示“Hello CE”文字。Hello2的程序如下表1-2所示:
列表1-2: Hello2,使用MessageBox函数的简单应用程序

Hello2.cpp
//======================================================================
// Hello2 - A simple application for Windows CE
//
// Written for the book Programming Windows CE
// Copyright (C) 2003 Douglas Boling
//======================================================================
#include "windows.h"

//
// Program entry point
//
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPWSTR lpCmdLine, int nCmdShow) {

MessageBox (NULL, TEXT ("Hello World"), TEXT ("Hello2"), MB_OK);
return 0;
}

编译并运行Hello2,可以看到如图1-2所示的小窗口。

图1-2(略)
运行在Windows CE桌面的Hello2


替代printf的MessageBox函数为Hello2提供了2个特性。第一个也是最明显的一个就是它创建一个窗口,并在上面显示"Hello World"文本。第二个特性是MessageBox函数直到用户关闭消息窗口才会返回。这允许Hello2一直保持运行,直到用户关闭窗口。


MessageBox函数原型如下:
int MessageBox (HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);
第1个参数是顶层窗口的句柄,它是消息窗口的父窗口。目前我们把这个参数置为NULL,因为Hello2还没有任何其它窗口。第2个参数是准备显示在窗口里的文字。注意传入的字符串是用TEXT宏包裹的,确保它能够编译成Unicode版本。第3个参数lpCaption是显示在窗口标题栏的文字。最后一个参数uType是一系列标志位,规定消息框如何显示在屏幕上。标志位规定了消息框中按扭的数量和类型,规定了图标的类型以及消息框窗口的风格设置。

表1-2列出了Windows CE下有效的标志位
表1-2: 默认标志位

标志位

按钮或者图标

用于按钮

MB_OK

OK

MB_OKCANCEL

OK and Cancel

MB_RETRYCANCEL

Retry and Cancel

MB_YESNO

Yes and No

MB_YESNOCANCEL

Yes, No, and Cancel

MB_ABORTRETRYIGNORE

Abort, Retry, and Ignore

用于图标

MB_ICONEXCLAMATION, MB_ICONWARNING

Exclamation point

MB_ICONINFORMATION, MB_ICONASTERISK

Lower case i within a circle

MB_ICONQUESTION

Question mark

MB_YESNO

Yes and No

MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND

Stop sign

MB_DEFBUTTON1

First button

MB_DEFBUTTON2

Second button

MB_DEFBUTTON3

Third button

For Window Styles:

MB_SETFOREGROUND

Bring the message box to the foreground.

MB_TOPMOST

Make the message box the topmost window.

MessageBox的返回值指出用户按了哪个按扭。返回值如下:

IDOK

OK button pressed

IDYES

Yes button pressed

IDNO

No button pressed

IDCANCEL

Cancel button pressed or Esc key pressed

IDABORT

Abort button pressed

IDRETRY

Retry button pressed

IDIGNORE

Ignore button pressed

此时值得注意的是,如果你调试和重新编译这个程序,它不会被再次下载到目标设备上的,因为程序早先的版本仍然正在目标系统上运行。换句话说,当您在eVC++中启动一个新的build时,您要确保Hello2没有运行在远程系统上,否则编译过程里的自动下载过程就会失败。如果发生这种情况,关闭应用程序,选择eVC++里[Update Remote File]菜单命令去下载新的编译后的文件。

Hello2展示了一个简单的窗口,但窗口只能按MessageBox函数允许的形式进行配置。如何显示一个完全由程序配置的窗口呢?在我们这样做之前,对Windows 应用程序如何工作的做一个快速浏览是必要的。

分享到:
评论

相关推荐

    lazarus-1.0.8-fpc-2.6.2-cross-arm-wince-win32

    lazarus-1.0.8-fpc-2.6.2-cross-arm-wince-win32 freepascal 用于开发WINCE程序

    Lazarus-0.9.28.2-fpc-2.2.4-cross-arm-wince-win32

    标题 "Lazarus-0.9.28.2-fpc-2.2.4-cross-arm-wince-win32" 暗示了一个用于开发针对Windows CE(掌上设备操作系统)应用程序的开源集成开发环境(IDE)——Lazarus的一个特定版本。Lazarus是Free Pascal编译器(FPC...

    WINCE程序设计 WINCE程序设计

    2. WinCE程序设计: - 开发环境:Visual Studio或Eclipse等集成开发环境(IDE),配合Platform Builder进行系统构建,Visual C++或C#用于编写应用程序。 - API集:WinCE提供了Win32子集API,包括GDI、Win32 API、MFC...

    hobd汉化版-wince

    标题 "hobd汉化版-wince" 指向的是一个专为Windows CE(Wince)操作系统汉化的HOBD软件版本。HOBD,全称是"Handy OBD-II",是一款用于汽车诊断的工具,它可以连接到车辆的OBD-II接口,读取并解析车载计算机的数据,...

    .net-cf-wince-curve.rar_WINCE 曲线_WINCE 曲线_wince 曲线控件_曲线 wince_

    描述中的".net-cf-wince-curve.rar"是一个包含用于Windows CE平台的曲线绘制控件的压缩文件。该控件可能提供API和方法,使开发者能够轻松地在Wince设备上生成实时数据曲线,这对于需要实时监测和分析数据的科学仪器...

    C# 各种文件格式的转换 ----winCE试验版

    C# 各种文件格式的转换 ----winCE试验版 京华志&精华志出品 希望大家互相学习,互相进步 支持CSDN 支持微软 主要包括C# ASP.NET SQLDBA 源码 毕业设计 开题报告 答辩PPT等

    qt-wince安装.pdf

    首先,你需要下载适用于Windows CE的Qt源代码包,例如`qt-embedded-wince-opensource-src-4.4.0.zip`。 2. **安装Visual Studio 2005** 安装Visual Studio 2005是必要的,因为Qt的构建系统依赖于其编译器。在安装...

    wince程序设计 wince程序设计 wince程序设计

    - .NET Compact Framework:微软提供的.NET框架的精简版,允许开发者使用C#或VB.NET开发WinCE应用程序,享受丰富的类库和垃圾回收机制。 - WinAPI:WinCE提供了一套与Windows桌面系统类似的API,使得移植Windows...

    qt-wince安装.docx

    - Qt的嵌入式开发包:qt-embedded-wince-opensource-src-4.4.0.zip - Microsoft Visual Studio 2005 (VS2005),用于编译和调试 - Windows Mobile 5.0 Pocket PC SDK,提供针对Windows CE的开发环境 - Microsoft ...

    3G-USB-WINCE驱动,支持华为部分无线网卡

    兼容wince5.0/6.0 以下列出的是调试通过的型号列表,仅供参考. 1. WCDMA/DSDPA: Hua Wei E180 Hua Wei E220 Hua Wei E1750(Modem:COM6,ATCMD:COM8,COM7 not use) Hua Wei E1550 Hua Wei E156G(Modem:COM6,ATCMD:...

    IDA教程-WinCE ARM调试器入门教程.pdf

    IDA教程-WinCE ARM调试器入门教程.pdf

    wince程序设计中文版1

    wince程序设计中文影印版 积分要多了,不好意思,我也不知道怎么取消 一共三个压缩包,须全部下载了解压,只让传10m,没办法啊 part1 http://download.csdn.net/source/257557 part2 ...

    wince程序设计教程

    本教程将深入探讨Wince程序设计的基础与高级特性,帮助初学者快速掌握这一领域的核心技能。 一、Windows CE概述 Windows CE是一个可裁剪、实时的、32位的操作系统,其设计目标是满足小型设备的特定需求。它提供了...

    最新Qt-WinCE全解

    2. **打包资源**: 将程序相关的资源文件(如图片、字体、配置文件等)打包成一个可执行的cab文件,方便在WinCE设备上安装。 3. **设备安装**: 将cab文件传输到WinCE设备上,通过设备的安装管理器进行安装。 4. **...

    VS2005-CoreCon-x86-WINCE600,wince开发软件安装包

    "VS2005-CoreCon-x86-WINCE600"这个安装包就是专门为Windows CE 6.00平台的开发设计的,它包含了构建、调试和测试嵌入式应用程序所需的工具和组件。 首先,"CoreCon"是Visual Studio 2005中的核心连接组件,它是...

    Image-update--WinCE-6.0.rar_gk7000_update WINCE_wince 6.0

    标题中的“Image-update--WinCE-6.0.rar_gk7000_update WINCE_wince 6.0”指的是一个针对Windows CE 6.0操作系统进行更新的镜像文件,该更新是针对名为“gk7000”的特定硬件平台设计的。在Windows CE系统中,"image...

    博创2410开发板光盘资料----WINCE实验指导书

    - **实验目的**: 掌握使用MFC框架开发WinCE应用程序的方法。 - **实验内容**: - 设计简单的用户界面。 - 实现基本的应用逻辑。 - 测试应用程序的功能。 #### 4.3 基于WINCEDIRECTSHOW的多媒体播放机实验 - **...

    基于ARM-WinCE的电机监控系统设计.pdf

    "基于ARM-WinCE的电机监控系统设计" 本文将对基于ARM-WinCE的电机监控系统设计进行详细的介绍,包括系统设计、系统结构、硬件电路设计、软件设计和测试过程等方面。 系统设计 基于ARM-WinCE的电机监控系统设计是...

    STL-WInCE 标准模板库EVC

    EVC(Embedded Visual C++)是微软为开发WinCE应用程序提供的集成开发环境。 STL-WinCE是针对Windows CE平台定制的STL版本,它允许开发者在WinCE系统中使用如向量(vector)、列表(list)、映射(map)、集合(set...

    winCE程序设计2

    winCE 程 序 设 计 part2

Global site tag (gtag.js) - Google Analytics