?? mainfrm.cpp
字號:
// MainFrm.cpp : implementation of the CMainFrame class
//
#include "stdafx.h"
#include "testsmscom.h"
#include "MainFrm.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#include "smscom.h" //控件頭文件
#include "initdlg.h"
#include "senddlg.h"
#define SMSMSG_ID 1000 //定義短信控件ID
CSmscom smscom; //短信控件對象
/////////////////////////////////////////////////////////////////////////////
// CMainFrame
IMPLEMENT_DYNAMIC(CMainFrame, CFrameWnd)
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)
ON_WM_CREATE()
ON_WM_SETFOCUS()
ON_COMMAND(ID_APP_INIT, OnAppInit)
ON_COMMAND(ID_APP_CLOSE, OnAppClose)
ON_COMMAND(ID_APP_SEND, OnAppSend)
ON_COMMAND(IDABORT, OnAbort)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
// 控件事件映像
BEGIN_EVENTSINK_MAP(CMainFrame, CFrameWnd)
ON_EVENT(CMainFrame, SMSMSG_ID , 1 /* OnEvent */, OnSMSEvent, VTS_I2 VTS_BSTR VTS_BSTR VTS_BSTR)
END_EVENTSINK_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMainFrame construction/destruction
CMainFrame::CMainFrame()
{
// TODO: add member initialization code here
}
CMainFrame::~CMainFrame()
{
}
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
// create a view to occupy the client area of the frame
if (!m_wndView.Create(NULL, NULL, AFX_WS_DEFAULT_VIEW,
CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL))
{
TRACE0("Failed to create view window\n");
return -1;
}
}
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
cs.dwExStyle &= ~WS_EX_CLIENTEDGE;
cs.lpszClass = AfxRegisterWndClass(0);
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// CMainFrame diagnostics
#ifdef _DEBUG
void CMainFrame::AssertValid() const
{
CFrameWnd::AssertValid();
}
void CMainFrame::Dump(CDumpContext& dc) const
{
CFrameWnd::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CMainFrame message handlers
void CMainFrame::OnSetFocus(CWnd* pOldWnd)
{
// forward focus to the view window
m_wndView.SetFocus();
}
//控件事件處理
void CMainFrame::OnSMSEvent( short nID , BSTR szPhone, BSTR szText, BSTR szTime )
{
//short szPhone[50];
//short szText[400];
//short szTime[50];
char szText2[400];
CString szstr;
switch( nID )
{
case 1:
TRACE(" Send Success \n");
break;
case 2:
TRACE(" Send Error \n" );
break;
case 3:
TRACE(" Recieve Msg \n" );
szstr.Format( "--電話:%s \n--信息: %s \n--時間: %s \n", szPhone, szText, szTime );
sprintf( szText2, "%s", szstr );
MessageBox( szText2,"接收信息 ", MB_OK );
break;
case 4:
TRACE(" Recieve Msg Id \n");
break;
case 5:
TRACE(" Error Command \n");
break;
default:
break;
}
return;
}
void CMainFrame::OnAppInit()
{
// TODO: Add your command handler code here
CInitDlg initdlg;
initdlg.DoModal();
// 創建短信控件、初始化設備
if( smscom.Create(NULL,0,CRect(0,0,0,0),this,SMSMSG_ID) )
{
if ( smscom.InitDevice( initdlg.m_nport,initdlg.m_nbaud, initdlg.m_ntype) != -1 )
AfxMessageBox( "Init() 連接成功!" );
else
{
smscom.DestroyWindow();
AfxMessageBox( "Init() 連接失敗 !" );
}
}
}
void CMainFrame::OnAppClose()
{
// TODO: Add your command handler code here
smscom.CloseDevice();
AfxMessageBox( "Close() OK!" );
}
void CMainFrame::OnAppSend()
{
// TODO: Add your command handler code here
char str[200];
char str2[200];
CSendDlg senddlg;
senddlg.DoModal();
sprintf( str, "%s", senddlg.m_szphone );
sprintf( str2, "%s", senddlg.m_sztext );
// 發送短信
if( smscom.SendMsg( str, str2) ==0 )
AfxMessageBox( "Send() 正在發送,請稍侯!" );
else
AfxMessageBox( "發送失敗!" );
}
void CMainFrame::OnAbort()
{
// TODO: Add your command handler code here
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -