亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gpssetup.cpp

?? 這是從賽迪網(wǎng)共享出來的可以直接使用的 GBS lib
?? CPP
字號:
#include "stdafx.h"
#include <gps.h>
#include "gpssetup.h"

#ifdef _DEBUG
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif



void DDX_CBData(CDataExchange* pDX, int nIDC, DWORD& dwData)
{
	HWND hWndCtrl = pDX->PrepareCtrl(nIDC);
	if (pDX->m_bSaveAndValidate)
	{
    int nSelected = ::SendMessage(hWndCtrl, CB_GETCURSEL, 0, 0L);
    dwData = ::SendMessage(hWndCtrl, CB_GETITEMDATA, nSelected, 0L);
	}
	else
	{
    int nCount = ::SendMessage(hWndCtrl, CB_GETCOUNT, 0, 0L);
    for (int i=0; i<nCount; i++)
    {
      DWORD dwItemData = ::SendMessage(hWndCtrl, CB_GETITEMDATA, i, 0L);
      if (dwItemData == dwData)
      {
        ::SendMessage(hWndCtrl, CB_SETCURSEL, i, 0L);
        break;
      }
    }
	}
}

void CBAddStringAndData(CWnd* pParent, int nIDC, const CString& sValue, DWORD dwData)
{
  HWND hWndCtrl = ::GetDlgItem(pParent->GetSafeHwnd(), nIDC);
  int nIndex = ::SendMessage(hWndCtrl, CB_ADDSTRING, 0, (LPARAM) (LPCTSTR) sValue);
  ::SendMessage(hWndCtrl, CB_SETITEMDATA, nIndex, dwData);
}


IMPLEMENT_DYNCREATE(CGeneralPropertyPage, CPropertyPage)

CGeneralPropertyPage::CGeneralPropertyPage() : CPropertyPage(CGeneralPropertyPage::IDD)
{
	//{{AFX_DATA_INIT(CGeneralPropertyPage)
	m_bDefault = FALSE;
	//}}AFX_DATA_INIT

  m_dwStopBits = GpsStopBits1;
  m_dwPort = 1;
  m_dwParity = GpsParityNone;
  m_dwBaudRate = 4800;
  m_dwDataBits = 8;
}

CGeneralPropertyPage::~CGeneralPropertyPage()
{
}

void CGeneralPropertyPage::DoDataExchange(CDataExchange* pDX)
{
	CPropertyPage::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CGeneralPropertyPage)
	DDX_Control(pDX, IDC_STOPBITS, m_ctrlStopBits);
  DDX_Control(pDX, IDC_DATABITS, m_ctrlDataBits);
	DDX_Control(pDX, IDC_PORT, m_ctrlPort);
	DDX_Control(pDX, IDC_PARITY, m_ctrlParity);
	DDX_Control(pDX, IDC_BAUDRATE, m_ctrlBaudRate);
	DDX_Check(pDX, IDC_DEFAULT, m_bDefault);
	//}}AFX_DATA_MAP

  DDX_CBData(pDX, IDC_STOPBITS, m_dwStopBits);
  DDX_CBData(pDX, IDC_PORT, m_dwPort);
  DDX_CBData(pDX, IDC_DATABITS, m_dwDataBits);
  DDX_CBData(pDX, IDC_PARITY, m_dwParity);
  DDX_CBData(pDX, IDC_BAUDRATE, m_dwBaudRate);
}


BEGIN_MESSAGE_MAP(CGeneralPropertyPage, CPropertyPage)
	//{{AFX_MSG_MAP(CGeneralPropertyPage)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()




IMPLEMENT_DYNAMIC(CPropertiesPropertySheet, CPropertySheet)

CPropertiesPropertySheet::CPropertiesPropertySheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
	:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
{
  AddPage(&m_Page1);
}

CPropertiesPropertySheet::CPropertiesPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
	:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
{
  AddPage(&m_Page1);
}

CPropertiesPropertySheet::~CPropertiesPropertySheet()
{
}


BEGIN_MESSAGE_MAP(CPropertiesPropertySheet, CPropertySheet)
	//{{AFX_MSG_MAP(CPropertiesPropertySheet)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

BOOL CGeneralPropertyPage::OnInitDialog() 
{
  //add the strings to the combo boxes

  //First the port number combo
  for (DWORD i=1; i<=4; i++)
  {
    CString sPort;
    sPort.Format(_T("COM%d"), i);
    CBAddStringAndData(this, IDC_PORT, sPort, i);
  }

  //then the stop bits
  CString sStop;
  sStop.LoadString(IDS_STOPBIT_1);
  CBAddStringAndData(this, IDC_STOPBITS, sStop, GpsStopBits1);
  sStop.LoadString(IDS_STOPBIT_1POINT5);
  CBAddStringAndData(this, IDC_STOPBITS, sStop, GpsStopBits1Point5);
  sStop.LoadString(IDS_STOPBIT_2);
  CBAddStringAndData(this, IDC_STOPBITS, sStop, GpsStopBits2);

  //then the parity
  CString sParity;
  sParity.LoadString(IDS_PARITY_EVEN);
  CBAddStringAndData(this, IDC_PARITY, sParity, GpsParityEven);
  sParity.LoadString(IDS_PARITY_ODD);
  CBAddStringAndData(this, IDC_PARITY, sParity, GpsParityOdd);
  sParity.LoadString(IDS_PARITY_NONE);
  CBAddStringAndData(this, IDC_PARITY, sParity, GpsParityNone);

  //then the data bits
  CString sDataBits;
  sDataBits.Format(_T("%d"), 7);
  CBAddStringAndData(this, IDC_DATABITS, sDataBits, 7);
  sDataBits.Format(_T("%d"), 8);
  CBAddStringAndData(this, IDC_DATABITS, sDataBits, 8);

  //then the baud rate
  CBAddStringAndData(this, IDC_BAUDRATE, _T("75"), 75);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("110"), 110);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("134"), 134);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("150"), 150);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("300"), 300);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("600"), 600);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("1200"), 1200);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("1800"), 1800);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("2400"), 2400);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("4800"), 4800);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("7200"), 7200);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("9600"), 9600);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("14400"), 14400);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("19200"), 19200);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("38400"), 38400);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("57600"), 57600);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("115200"), 115200);

  //let the parent do its stuff
	CPropertyPage::OnInitDialog();
	
  return TRUE;
}



IMPLEMENT_DYNCREATE(CWizSetupPage1, CPropertyPage)

CWizSetupPage1::CWizSetupPage1() : CPropertyPage(CWizSetupPage1::IDD)
{
	//{{AFX_DATA_INIT(CWizSetupPage1)
	//}}AFX_DATA_INIT
}

CWizSetupPage1::~CWizSetupPage1()
{
}

void CWizSetupPage1::DoDataExchange(CDataExchange* pDX)
{
	CPropertyPage::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CWizSetupPage1)
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CWizSetupPage1, CPropertyPage)
	//{{AFX_MSG_MAP(CWizSetupPage1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

BOOL CWizSetupPage1::OnSetActive() 
{
	CPropertySheet* pParent = STATIC_DOWNCAST(CPropertySheet, GetParent());
  ASSERT(pParent);
  pParent->SetWizardButtons(PSWIZB_NEXT);
	
	return CPropertyPage::OnSetActive();
}



IMPLEMENT_DYNCREATE(CWizSetupPage2, CPropertyPage)

CWizSetupPage2::CWizSetupPage2() : CPropertyPage(CWizSetupPage2::IDD)
{
	//{{AFX_DATA_INIT(CWizSetupPage2)
	//}}AFX_DATA_INIT

  m_dwPort = 1;
  m_dwBaudRate = 4800;
}

CWizSetupPage2::~CWizSetupPage2()
{
}

void CWizSetupPage2::DoDataExchange(CDataExchange* pDX)
{
	CPropertyPage::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CWizSetupPage2)
	DDX_Control(pDX, IDC_PORT, m_ctrlPort);
	DDX_Control(pDX, IDC_BAUDRATE, m_ctrlBaudRate);
	//}}AFX_DATA_MAP

  DDX_CBData(pDX, IDC_PORT, m_dwPort);
  DDX_CBData(pDX, IDC_BAUDRATE, m_dwBaudRate);
}


BEGIN_MESSAGE_MAP(CWizSetupPage2, CPropertyPage)
	//{{AFX_MSG_MAP(CWizSetupPage2)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

BOOL CWizSetupPage2::OnSetActive() 
{
	CPropertySheet* pParent = STATIC_DOWNCAST(CPropertySheet, GetParent());
  ASSERT(pParent);
  pParent->SetWizardButtons(PSWIZB_BACK | PSWIZB_NEXT);
	
	return CPropertyPage::OnSetActive();
}




IMPLEMENT_DYNCREATE(CWizSetupPage3, CPropertyPage)

CWizSetupPage3::CWizSetupPage3() : CPropertyPage(CWizSetupPage3::IDD)
{
	//{{AFX_DATA_INIT(CWizSetupPage3)
	m_nMakeDefault = -1;
	m_sName = _T("");
	//}}AFX_DATA_INIT

  m_nMakeDefault = 0;
}

CWizSetupPage3::~CWizSetupPage3()
{
}

void CWizSetupPage3::DoDataExchange(CDataExchange* pDX)
{
	CPropertyPage::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CWizSetupPage3)
	DDX_Control(pDX, IDC_NAME, m_ctrlName);
	DDX_Radio(pDX, IDC_YESDEFAULT, m_nMakeDefault);
	DDX_Text(pDX, IDC_NAME, m_sName);
	//}}AFX_DATA_MAP

  DDV_MaxChars(pDX, m_sName, GPS_MaxDeviceName);

  if (pDX->m_bSaveAndValidate)
  {
    if (GpsDeviceNameAlreadyExists(m_sName))
    {
      pDX->PrepareEditCtrl(IDC_NAME);
      CString sMsg;
      AfxFormatString1(sMsg, IDS_WIZ_NON_UNIQUE_NAME, m_sName);
      AfxMessageBox(sMsg);
      pDX->Fail();
    }
  }
}


BEGIN_MESSAGE_MAP(CWizSetupPage3, CPropertyPage)
	//{{AFX_MSG_MAP(CWizSetupPage3)
	ON_EN_CHANGE(IDC_NAME, OnChangeName)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

BOOL CWizSetupPage3::OnSetActive() 
{
  //update the wizard buttons
  OnChangeName();

	return CPropertyPage::OnSetActive();
}

void CWizSetupPage3::OnChangeName() 
{
	CPropertySheet* pParent = STATIC_DOWNCAST(CPropertySheet, GetParent());
  ASSERT(pParent);

  int nLength = m_ctrlName.GetWindowTextLength();

  if (nLength)
    pParent->SetWizardButtons(PSWIZB_BACK | PSWIZB_FINISH);
  else
    pParent->SetWizardButtons(PSWIZB_BACK | PSWIZB_DISABLEDFINISH);
}

BOOL CWizSetupPage3::OnWizardFinish() 
{
	if (UpdateData(TRUE))
  	return CPropertyPage::OnWizardFinish();
  else
    return FALSE;
}



IMPLEMENT_DYNAMIC(CInstallPropertySheet, CPropertySheet)

CInstallPropertySheet::CInstallPropertySheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
	:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
{
  SetWizardMode();
  AddPage(&m_Page1);
  AddPage(&m_Page2);
  AddPage(&m_Page3);
}

CInstallPropertySheet::CInstallPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
	:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
{
  SetWizardMode();
  AddPage(&m_Page1);
  AddPage(&m_Page2);
  AddPage(&m_Page3);
}

CInstallPropertySheet::~CInstallPropertySheet()
{
}


BEGIN_MESSAGE_MAP(CInstallPropertySheet, CPropertySheet)
	//{{AFX_MSG_MAP(CInstallPropertySheet)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

BOOL CWizSetupPage2::OnInitDialog() 
{
  //add the strings to the combo boxes

  //First the port number combo
  for (DWORD i=1; i<=4; i++)
  {
    CString sPort;
    sPort.Format(_T("COM%d"), i);
    CBAddStringAndData(this, IDC_PORT, sPort, i);
  }

  //then the baud rate
  CBAddStringAndData(this, IDC_BAUDRATE, _T("75"), 75);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("110"), 110);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("134"), 134);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("150"), 150);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("300"), 300);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("600"), 600);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("1200"), 1200);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("1800"), 1800);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("2400"), 2400);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("4800"), 4800);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("7200"), 7200);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("9600"), 9600);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("14400"), 14400);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("19200"), 19200);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("38400"), 38400);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("57600"), 57600);
  CBAddStringAndData(this, IDC_BAUDRATE, _T("115200"), 115200);

  //let the parent do its stuff
	CPropertyPage::OnInitDialog();
	
	return TRUE;
}







?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久婷婷国产综合精品| 国产精品亚洲午夜一区二区三区| 丁香啪啪综合成人亚洲小说| 精品捆绑美女sm三区| 成人h动漫精品| 亚洲人精品午夜| 一本到不卡免费一区二区| 一区二区三区欧美在线观看| 欧美三级中文字幕在线观看| 日本欧美一区二区三区| 欧美一级夜夜爽| 国产成人精品三级| 伊人开心综合网| 欧美一级理论性理论a| 国内精品伊人久久久久av一坑| 国产女人18水真多18精品一级做| 成人av在线电影| 午夜国产精品一区| 久久久五月婷婷| 91麻豆国产自产在线观看| 天天av天天翘天天综合网| 久久综合久色欧美综合狠狠| k8久久久一区二区三区| 视频在线在亚洲| 国产精品网友自拍| 欧美肥妇free| 丁香亚洲综合激情啪啪综合| 亚洲图片欧美色图| 欧美精品一区二| 欧美一a一片一级一片| 激情小说亚洲一区| 亚洲精品成a人| 精品999在线播放| 欧美中文字幕一区| 国产一区二区三区黄视频 | 成人在线一区二区三区| 亚洲精品久久久蜜桃| 欧美zozo另类异族| 一本大道av一区二区在线播放| 日本亚洲欧美天堂免费| 欧美三级一区二区| 国产黑丝在线一区二区三区| 亚洲一区二区偷拍精品| 久久久国产午夜精品| 欧美嫩在线观看| 波多野洁衣一区| 激情文学综合插| 亚洲成人av免费| 亚洲人成网站在线| 国产欧美日韩另类一区| 欧美一区二区三区精品| 在线精品视频免费观看| 成人免费精品视频| 国产美女精品人人做人人爽| 日韩福利电影在线观看| 一区二区三区免费观看| 国产精品免费看片| 国产无人区一区二区三区| 日韩欧美在线不卡| 欧美日韩一区三区| 色噜噜夜夜夜综合网| 99久久国产免费看| 成人精品电影在线观看| 国产一区二区福利视频| 日本va欧美va精品| 日韩中文字幕麻豆| 性欧美疯狂xxxxbbbb| 一区二区三区在线影院| 亚洲视频一二三区| 亚洲色图都市小说| 亚洲男同性视频| 国产精品全国免费观看高清 | 欧美日本一区二区三区四区| 91色.com| 在线免费视频一区二区| 在线亚洲免费视频| 在线视频一区二区三区| 在线中文字幕一区| 在线观看av一区| 欧美日韩中文另类| 91麻豆精品国产91久久久更新时间| 日韩国产欧美一区二区三区| 亚洲一区视频在线观看视频| 亚洲一区二区三区爽爽爽爽爽| 亚洲精品videosex极品| 亚洲免费资源在线播放| 欧美激情中文不卡| 亚洲欧洲韩国日本视频| 一区二区三区在线观看视频| 亚洲国产一区二区视频| 午夜日韩在线观看| 久久成人麻豆午夜电影| 国产麻豆精品一区二区| 成人小视频免费在线观看| 91网站黄www| 欧美日韩视频在线第一区| 91精品国产综合久久蜜臀| 欧美成人午夜电影| 国产欧美在线观看一区| 亚洲色图19p| 全部av―极品视觉盛宴亚洲| 国产在线一区二区综合免费视频| 国产成人亚洲精品青草天美| 91麻豆精品视频| 日韩欧美电影一二三| 国产欧美日韩精品在线| 一区二区三区四区五区视频在线观看| 五月天精品一区二区三区| 久久国产精品99精品国产| 国产成人小视频| 欧美日韩美少妇 | 久久―日本道色综合久久| 国产精品午夜免费| 日韩精品三区四区| 国产一区二区三区高清播放| 色综合久久综合网97色综合| 欧美一区二区三区四区高清| 中文字幕精品一区二区三区精品| 亚洲一区av在线| 91尤物视频在线观看| 麻豆视频观看网址久久| 99久久久国产精品| 日韩女同互慰一区二区| 国产精品丝袜久久久久久app| 亚洲黄色录像片| 国产一区在线不卡| 欧美日韩在线播放三区| 亚洲国产高清aⅴ视频| 天堂资源在线中文精品| 91免费在线看| 国产午夜精品理论片a级大结局| 亚洲国产成人va在线观看天堂| 国产精品99久久久| 在线播放国产精品二区一二区四区| 久久综合中文字幕| 午夜精品免费在线观看| 成人禁用看黄a在线| 精品欧美久久久| 亚洲一区视频在线| 精品88久久久久88久久久| 夜色激情一区二区| kk眼镜猥琐国模调教系列一区二区| 欧美一区二区视频在线观看2022 | 一区二区在线看| 国产一区亚洲一区| 日韩一区二区中文字幕| 亚洲一区免费视频| 97超碰欧美中文字幕| 国产免费成人在线视频| 精品一区二区三区视频在线观看 | 国产一区二区在线看| 欧美精品高清视频| 亚洲国产一区二区视频| 欧美影院一区二区| 一区二区免费视频| 色综合欧美在线视频区| 亚洲日本护士毛茸茸| 在线视频你懂得一区| 欧美自拍丝袜亚洲| 一区二区三区日本| 在线免费观看不卡av| 亚洲桃色在线一区| 94-欧美-setu| 亚洲欧洲精品一区二区三区不卡| 国产91精品在线观看| 欧美激情一区二区三区蜜桃视频| 精品夜夜嗨av一区二区三区| 欧美xxxxxxxxx| 免费成人在线观看| 宅男在线国产精品| 麻豆国产精品官网| 精品久久久久久久久久久久久久久 | 欧美激情中文不卡| 成人禁用看黄a在线| 国产精品国产精品国产专区不片| 成人丝袜视频网| 国产精品国产三级国产a| 色欧美88888久久久久久影院| 亚洲摸摸操操av| 69精品人人人人| 青青草精品视频| 精品99一区二区三区| 99热99精品| 丰满亚洲少妇av| 国产精品久久久久久一区二区三区| 成人精品在线视频观看| 亚洲乱码日产精品bd| 欧美亚洲综合一区| 麻豆91在线播放免费| 国产欧美日韩在线| 欧洲av一区二区嗯嗯嗯啊| 日本中文字幕不卡| 2021久久国产精品不只是精品| 成人avav影音| 午夜伊人狠狠久久| 久久新电视剧免费观看| 91在线porny国产在线看| 蜜臀av一级做a爰片久久| 精品日韩av一区二区| 欧美性猛交xxxxxxxx|