友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
一世书城 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

VC语言6.0程序设计从入门到精通-第91章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






                                   图 11…18    对话框界面  



     为对话框添加完控件后,需要设置各控件 ID,并为其添加变量。各控件的 ID 及其对应 

的变量如表 11…14 所示。  



 ·324 ·  


…………………………………………………………Page 336……………………………………………………………

                                                                                     第 11 章    网络编程  



     表 11…14                             各控件 ID 及对应变量  

               控件                                  ID                                变量  

 MSm 控件                          IDC_MSM                         CMSm m_m  

 接收数据 Edit                          IDC_RECEIVEDATA                    CString m_Receive  

 发送数据 Edit                          IDC_SENDDATA                       CString m_Send  

 选择串口下拉列表                           IDC_BOLIST                      int m_Port (初始化为0 )  

 打开串口按钮                             IDC_OPENPORT                       无  

 关闭串口按钮                             IDC_CLOSTPORT                      无  

 发送按钮                               IDC_SEND                           无  



     在文件“MSmDlg。h ”的头部加入语句#include  〃msm1。h〃 ,然后为对话框类加入 

成员函数 void Initm() ,来初始化 MSm 控件,其代码如下:  



     void CMSmDlg::Initm()  



     {  



          //设置串口  



          m_m。SetmPort(m_Port+1);  



          //  设置数据读取格式为二进制方式  



          m_m。SetInputMode(1);                



          //  设置传输参数  



          m_m。SetSettings(〃9600;n;8;1〃);  



          //缓冲区内有一个字符就可以接收  



          m_m。SetRThreshold(1);  



          //  指定接收缓冲区大小  



          m_m。SetInBufferSize(1024);  



          //指定发送缓冲区大小  



          m_m。SetOutBufferSize(1024);  



          //  清空接收缓冲区  



          m_m。SetInBufferCount(0);                       



          //  打开串口  



          if(!m_m。GetPortOpen())  



          {  



                m_m。SetPortOpen(TRUE);  



          }  



     }  



     当选择下拉列表中的端口时,会激发 CBN_SELCHANGE 消息,为其添加响应函数,代 

码如下:  



     void CMSmDlg::OnSelchangebolist()    



     {  



          // TODO: Add your control notification handler code here  



          CString m_str;  



          //得到下拉列表内容  



          GetDlgItemText(IDC_BOLIST; m_str);  



                                                                                                 ·325 ·  


…………………………………………………………Page 337……………………………………………………………

Visual C++ 6。0 程序设计从入门到精通  



            //得到串口号  



            m_Port = atoi(LPCTSTR(m_str))…1;  



      }  



      为“打开串口”按钮添加响应函数,代码如下:  



      void CMSmDlg::OnOpenport()    



      {  



            // TODO: Add your control notification handler code here  



            Initm();  



      }  



      为“关闭串口”按钮添加响应函数,代码如下:  



      void CMSmDlg::OnClostport()    



      {  



            // TODO: Add your control notification handler code here  



            if( m_m。GetPortOpen() )  



            {  



                  //  关闭串口  



                  m_m。SetPortOpen(0);  



            }  



      }  



      为“发送”按钮添加响应函数,代码如下:  



      void CMSmDlg::OnSend()    



      {  



            // TODO: Add your control notification handler code here    



            //得到发送 Edit 控件的数据  



            UpdateData(TRUE);  



            int Count=m_Send。GetLength();  



            //将发送数据传给 m_Array  



            CByteArray m_Array;  



            m_Array。RemoveAll();  



            m_Array。SetSize(Count);  



              for(int i=0;i 0)  



              {  



                     //得到接收数据  



                     m_input = m_m。GetInput();  



                     str = (char*)(unsigned char*)m_input。parray…》pvData;  



              }  



              //清除字符串中的不必要字符  



              i = 0;  



              str1 = str;  



              while(i 《 k)  



              {  



                     i++;  



                     str1++;  



              }  



              *str1    =’0’;      



                str2 = (const char*)str;  



              //得到最终数据  



              m_Receive += (LPCTSTR)str2;  



       default:  



              break;  



       }  



       //  显示数据               



       UpdateData(FALSE);  



}  



至此,程序设计完成。运行两个程序,分别选择串口  1 和串口 2 ,然后收发数据,如图 



                                                                                                                           ·327 ·  


…………………………………………………………Page 339……………………………………………………………

Visual C++ 6。0 程序设计从入门到精通  



11…19 和图 11…20 所示。  



                                                                                            



                图 11…19    串口发送数据                                               图 11…20    串口接收数据  



11。6    本章小结  



     本章介绍了网络编程的基本知识及基本步骤,并且详细介绍了 WinSock 类。接着利用所 

讲知识编程实现了一个网络聊天系统,最后利用  MSm  控件实现了简单的串口通信。相 

信通过本章的学习,读者可以编写简单的网络应用程序,并会利用  MSm  控件进行简单 

的串口数据传输。  

       



 ·328 ·  


…………………………………………………………Page 340……………………………………………………………

               第 12 章    数据库开发  

               第 12 章    数据库开发  



   随着计算机技术的飞速发展,数据库的应用也越来越广泛。如今,数据库技术已经成为 

计算机技术中的核心技术之一。本章首先简单介绍数据库的基本概念及用 Visual  C++  6。0 进 

行数据库开发的几种相关技术,然后介绍 Access 数据库的建立和一些基本的 SQL 语句,最 

后通过一个具体的实例来详细说明  ADO  技术在数据库开发中的应用。本章主要包括以下几 

方面的内容:  

   o  数据库的基本概念及数据库的相关技术;  

   o  Access 数据库的建立;  

   o  基本的 SQL 语句;  

   o  如何利用 ADO 技术进行数据库开发。  



12。1    概述  



   数据库技术产生于 20 世纪 60 年代中期,是数据管理的最新技术,是计算机科学的重要 

分支,它的出现极大的促进了计算机应用向各行业的渗透。本节将对数据库的概念,数据库 

的相关技术以及如何开发数据库应用程序作一简单介绍。  



12。1。1    数据库的基本概念  



   所谓数据库(Database ,简称 DB ),就是长期存储在计算机内的、有组织的、可共享的 

数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度,较高 

的数据独立性和易扩展性,并可为各种用户共享。  

   有了数据和数据库,还要进行数据库的管理,不仅可以科学地组织这些数据并将其存储 

在数据库中,而且还能高效地处理
返回目录 上一页 下一页 回到顶部 0 1
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!