歡迎您光臨本站 登入註冊首頁

概述

   本文主要講述如何使用EmbeddedvisualC4.0來進行WindowsCE.net的開發?如果你已經能熟練應用MicrosoftVisualC這個微軟Wind……

    本文主要講述如何使用Embedded visual C 4.0 來進行 Windows CE.net的開發?如果你已經能熟練應用 Microsoft Visual C 這個微軟 Windows 平台上最優秀的開發工具,那麼這個針對於嵌入式Windows CE.net的開發環境Embedded visual C 4.0對你來說也就相對簡單了。

關於Embedded visual C 4.0嚮導
    Embedded visual  C 4.0能使你開發和Visual C 相似的應用程序的在Windows CE.net上運行的應用程序,另外,還包括你所開發對於Windows CE平台和裝置的應用程序時所用的幫助工具。你要弄明白目標環境、Windows CE.net和新的嚮導的特殊性。這裡我們將重點介紹一下“Windows CE.net 應用程序嚮導(Wizards)”。

    Embedded visual  C 4.0 中所帶的應用程序嚮導是一個非常有用的工具。一共有七種類型的新的嚮導,它們的使用方法和 Visual C 中常規的嚮導沒什麼區別,只是它們是用於 Windows CE.net 開發的。你可以利用它們來快速地創建一個基本的應用程序、動態連接庫(DLL)或者組件應用程序外殼。這七種新的嚮導分別是:WCE 應用程序; WCE MFC嚮導(.dll);WCE 動態連接庫 ;WCE 靜態連接庫嚮導;WCE ATL COM 應用嚮導; WCE MFC ActiveX 控制項嚮導和WCE MFC嚮導(.exe)。相比於台式計算機系統,Win32 API(包括MFC)都有很大的限制,例如,Windows CE系統中很多行為都不是很明顯,即使她也允許你象在台式PC機那樣操作。 當然隨著 Windows CE.net 的普及,必然會有更多的 eMbedded Visual C 4.0 嚮導出現的。

使用eMbedded Visual C 4.0編寫第一個 CE 應用程序
    以下我們將通過一個簡單的例子來說明如何使用 eMbedded Visual C 4.0 的 WCE MFC 應用嚮導來(EXE) 來開發一個 CE 應用程序。eMbedded Visual C 4.0提供了以下CPU類型的多種選擇:ARM, MIPS, Shx及 x86。雖然作為Windows CE.net的編譯器,但她也支持很多不同的對象裝置。用戶在編輯框中輸入兩個數,單擊”計算結果”按鈕,則在第三個編輯框中顯示兩數結果,可以是四種演算法中一種.編寫一個小程序名為y3.

1. 定製對話框模板
設置對話框本身的屬性;向對話框放置控制項及設置控制項跳錶順序.

  1. 設置對話框的屬性
  2. 添加控制項並設置控制項屬性.本次介紹七種圖形控制項,靜態文本控制項,編輯框,組框,按鈕,複選框以及單選框
  3. 設置控制項跳錶順序,即對每個控制項賦予順序編號.

2. 定義成員變數
變數的類別可以為Value或Control.後者表示所定義的變數是控制項類的一個對象.前者表示所定義的變數是與控制項相聯繫的一個值.

3. 增加事件處理函數

4. 增加代碼
需要實現的函數包括:OnButtonResult(),OnChangeEditAdd1(),OnChangeEditAdd2(),OnRadioAdd(),OnRadioDiv(),OnRadioMulti(),OnRadioSub().

void CY3Dlg::OnChangeEditAdd1()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here
if(m_bAtOnce)
{
OnButtonResult();}
}

void CY3Dlg::OnChangeEditAdd2()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here
UpdateData();
if(m_bAtOnce)
{
OnButtonResult();
}
}

void CY3Dlg::OnRadioAdd()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_strOpr=" ";
UpdateData(false);
}

void CY3Dlg::OnRadioDiv()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_strOpr="/";
UpdateData(false);
}

void CY3Dlg::OnRadioMulti()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_strOpr="*";
UpdateData(false);
}

void CY3Dlg::OnRadioSub()
{
// TODO: Add your control notification handler code here
UpdateData(true);
m_strOpr="-";
UpdateData(false);
}

void CY3Dlg::OnButtonResult()
{
// TODO: Add your control notification handler code here
UpdateData(true);
switch(m_dOpr)
{
case 0: /*加法*/
m_fResult=m_fAdd1 m_fAdd2;
break;
case 1: /*減法*/
m_fResult=m_fAdd1-m_fAdd2;
break;
case 2: /*乘法*/
m_fResult=m_fAdd1*m_fAdd2;
break;
case 3: /*除法*/
m_fResult=m_fAdd1/m_fAdd2;
break;
}
UpdateData(false);
}

上面代碼中頻繁出現了函數Updatedata(),其格式如下:
BOOL UpdataData(BOOL bSaveAndValidate=TRUE); Updatedata()是MFC類CWnd的成員函數,CWnd類是很重要的一個MFC類,所有窗口類都直接或間接繼承它。各關聯函數的初值在函數CY3Dlg::CY3Dlg中初始化。

CY3Dlg::CY3Dlg(CWnd* pParent /*=NULL*/): CDialog(CY3Dlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CY3Dlg)
m_fResult = 0.0;
m_dOpr = 0;
m_strOpr = _T(" ");
m_bAtOnce=FALSE;
m_fAdd1 = 0.0;
m_fAdd2 = 0.0;
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

編程結束
 祝賀你!你已經完成了第一個 Windows CE 應用程序的開發。就像你所看到的一樣,使用embedded visual C 來開發 Windows CE 應用程序和開發一個 Win32 應用程序是一樣的簡單。大多數步驟都是一樣的。至此,本文已經就如何使用embedded visual C 來開發 Windows CE 應用程序做了一個簡單的介紹。在下面的章節中,你可以到其它相關的地方去獲取更多的關於 Windows CE 和手持計算的知識。


[admin via 研發互助社區 ] 使用Embedded Visual C4.0來進行WindowsCE.net的開發已經有1580次圍觀

http://cocdig.com/docs/show-post-42266.html