• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    模擬手機(jī)通信的研究

    2013-04-29 00:44:03趙艷鋒
    無線互聯(lián)科技 2013年9期
    關(guān)鍵詞:手機(jī)網(wǎng)絡(luò)多媒體

    趙艷鋒

    摘 要:本系統(tǒng)是現(xiàn)實中手機(jī)的計算機(jī)模擬,是集網(wǎng)絡(luò)通信,電話撥號,數(shù)據(jù)庫操作,多媒體顯示等各項功能于一身,是現(xiàn)實中手機(jī)在計算機(jī)中的再現(xiàn)。

    關(guān)鍵詞:數(shù)據(jù)庫;網(wǎng)絡(luò);電話撥號;多媒體;手機(jī)

    主程序是基于單文檔建立起來的,消息始終貫穿于整個程序中。數(shù)據(jù)的變化,控制量的變化均是通過消息的通知來實現(xiàn)的。消息是VC++的精髓,消息的驅(qū)動能產(chǎn)生神奇的效果。當(dāng)程序由待機(jī)狀態(tài)進(jìn)入主菜單時,程序創(chuàng)建主菜單CEntry類,這時m_pActiveWnd將被設(shè)置為CEntry類的對象地址,這樣“手機(jī)鍵盤”產(chǎn)生的消息將由CEntry類來處理。當(dāng)選擇了主菜單的某一項時,CEntry類將向其父窗口CMobView回送一個自定義消息WM_FLAG以通知父窗口要創(chuàng)建新窗口了(::PostMessage(this->GetParent()->m_hWnd,WM_FLAG,m_nCurrentSel+1,0);),在WM_FLAG的處理函數(shù)中我們將創(chuàng)建新的窗口:

    void CMobView::OnFlag(WPARAM wParam, LPARAM lParam)

    {

    switch(wParam)

    {

    case 1:

    if(m_pActiveWnd != this)

    m_pActiveWnd->ShowWindow(SW_HIDE);

    m_pBeforeWnd = m_pActiveWnd;

    m_hTelebook.Create(this,IDD_TELEBOOK);

    m_pActiveWnd = &m_hTelebook;

    m_hTelebook.m_pBefore = this->m_pBeforeWnd;

    if(m_pActiveWnd != this)

    m_pActiveWnd->ShowWindow(SW_SHOW);

    break; .

    }

    }

    CMobView類中有個變量CWnd的指針類型變量m_pBeforeWnd,子窗口中也有指針類型變量m_pBefore。它的作用主要體現(xiàn)在從子窗口的返回過程中。在創(chuàng)建新的子窗口前先將當(dāng)前活動窗口地址保存至子窗口的變量m_pBefore。子窗口創(chuàng)建后,“手機(jī)鍵盤”產(chǎn)生的消息都傳送到子窗口中去。也就是說負(fù)責(zé)“返回”操作的右軟鍵,所產(chǎn)生的消息由子窗口來處理。所以原窗口的顯示,子窗口的銷毀,都應(yīng)該在子窗口中處理。這樣我們就可以這樣來做:

    void CEntry::OnRSoft()

    {

    m_bmpDisplay.DeleteObject();

    CMobView* pView;

    pView = (CMobView*)this->GetParent();

    m_pBefore = (CMobView*)this->GetParent();

    pView->m_pActiveWnd=m_pBefore;

    this->DestroyWindow();

    }

    我們把保存在子窗口中的原來的活動窗口重新傳給父窗口的m_pActiveWnd,然后子窗口再銷毀自己。這樣,我們就成功地實現(xiàn)了窗口的返回。

    函數(shù)ReceiveMessage用于接收消息,處理接收到的消息數(shù)據(jù)。在本程序中,每次收到消息后,都將其存入數(shù)據(jù)庫中。CMessage顯示短信數(shù)據(jù)時,將從數(shù)據(jù)庫中讀取相應(yīng)數(shù)據(jù)。其定義如下:

    void CMobView::ReceiveMessage()

    {

    ASSERT(m_pSocket);

    char buffer[4096];

    char bufferMess[4000];

    int len = m_pSocket->Receive(buffer,4095);

    if(len<1)

    {

    AfxMessageBox("接收信息異常!");

    return;

    }

    buffer[len] = 0;

    CString m_strAll = buffer;

    //取得時間

    CString m_strTime;

    char bufferTime[30];

    int j;

    for(j = 0;j

    {

    bufferTime[j] = buffer[24+j];

    }

    bufferTime[m_nLen] = 0;

    m_strTime = bufferTime;

    //取得號碼

    char bufferFrom[12];

    char bufferTo[12];

    for(int i = 0;i<11;i++)

    {

    bufferFrom[i] = buffer[i];

    bufferTo[i] = buffer[11+i];

    }

    bufferFrom[11] = 0;

    bufferTo[11] = 0;

    CString strFrom = bufferFrom;

    CString strTo = bufferTo;

    CString str = bufferMess;

    extern CString m_strMyNum;

    //播放聲音

    m_nWave.OpenDevice();

    m_nWave.Play(this,m_strMesRing);

    函數(shù)OnSend用于發(fā)送消息,其定義如下:

    void CMobView::OnSend()

    {

    if(m_pSocket == NULL)

    return;

    extern CString m_strMyMess;

    if(!m_pSocket->Send(m_strMyMess,strlen(m_strMyMess)))

    {

    AfxMessageBox("發(fā)送消息失??!");

    return;

    }

    }

    在該函數(shù)中,Send所發(fā)送的消息為全局變量字符串m_strMyMess,它是在CMessage中被賦值的:

    m_strMyMess=m_strMyNum+m_strToNum+m_strLen+m_strTime+m_strMyMess;其中有本手機(jī)號,對方手機(jī)號,消息發(fā)送時間,編輯框中編輯的消息。

    當(dāng)客戶端收到消息時,將消息存入數(shù)據(jù)庫表“短信”中。當(dāng)客戶端連接服務(wù)器成功后,通過查詢字段TeleNumTo,來判斷消息是否是自己的。如果是便可在“收件箱”中得以顯示了。

    [參考文獻(xiàn)]

    [1]王育堅.《Visual C++面向?qū)ο缶幊探坛獭?清華大學(xué)出版社,2003年.

    [2]梁肇新.《編程高手箴言》.電子工業(yè)出版社,2004年.

    [3]飛思科技.《精通MFC》.電子工業(yè)出版社,2003年.

    [4]George Shepherd,Scot Wingo.《深入解析MFC》.中國電力出版社,2003年.

    [5]張海藩.《軟件工程導(dǎo)論》,清華大學(xué)出版社,2003年.

    猜你喜歡
    手機(jī)網(wǎng)絡(luò)多媒體
    借助多媒體探尋有效設(shè)問的“四度”
    多媒體在《機(jī)械制圖》課中的應(yīng)用
    蘋果手機(jī)黑產(chǎn)案件偵查與法律適用研究
    法制博覽(2016年11期)2016-11-14 09:42:53
    例談沒收手機(jī)引發(fā)的師生矛盾沖突
    關(guān)于高校體育課堂“手機(jī)”現(xiàn)象的思考
    體育時空(2016年9期)2016-11-10 21:57:52
    油氣集輸系統(tǒng)信息化發(fā)展形勢展望
    基于網(wǎng)絡(luò)的信息資源組織與評價現(xiàn)狀及發(fā)展趨勢研究
    手機(jī)鋰離子電池充電電路的設(shè)計與實現(xiàn)
    基于網(wǎng)絡(luò)的中學(xué)閱讀指導(dǎo)
    考試周刊(2016年79期)2016-10-13 21:50:36
    新形勢下地市報如何運(yùn)用新媒體走好群眾路線
    中國記者(2016年6期)2016-08-26 13:02:28
    长泰县| 同江市| 蓝田县| 吴忠市| 基隆市| 疏勒县| 海淀区| 延长县| 郁南县| 湄潭县| 清原| 独山县| 浦城县| 宁安市| 天等县| 乌什县| 临夏市| 东乌珠穆沁旗| 巨野县| 淮北市| 安国市| 牡丹江市| 浦江县| 拉孜县| 湛江市| 报价| 沂源县| 永修县| 龙山县| 子洲县| 兰西县| 霍邱县| 临洮县| 广宁县| 霸州市| 美姑县| 子长县| 白山市| 资源县| 寿光市| 三台县|