freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vc[mfc]編寫串口調(diào)試助手(參考版)

2025-06-29 04:50本頁面
  

【正文】 努力過后,才知道許多事情,堅(jiān)持堅(jiān)持,就過來了。有時(shí)候覺得自己像個(gè)神經(jīng)病。在紛雜的塵世里,為自己留下一片純靜的心靈空間,不管是潮起潮落,也不管是陰晴圓缺,你都可以免去浮躁,義無反顧,勇往直前,輕松自如地走好人生路上的每一步3. 花一些時(shí)間,總會(huì)看清一些事。. 運(yùn)行效果果1. 若不給自己設(shè)限,則人生中就沒有限制你發(fā)揮的藩籬。// 設(shè)置字體顏色為紅色 } } // TODO: Return a different brush if the default is not desired return hbr。 case IDC_EDIT_TX: { pDCSetBkMode(TRANSPARENT)。//背景色透明 pDCSetTextColor(RGB(250,0,0))。 pDCSetBkMode(TRANSPARENT)。 //pDCSetBkColor(RGB(128,128,128))。 return brush。}最后修改一下程序框的背景色或編輯框的文字顏色等,需要用到OnCtlColor函數(shù),用Class Wizard添加函數(shù)編輯代碼如下:HBRUSH CCommassistDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor)。 UpdateData(false)。 OnBtnHandsend()。 //清除串口錯(cuò)誤、得到當(dāng)前狀態(tài) iTemp=()。errors,amp。 int iTemp。 DWORD errors。 //更新發(fā)送框內(nèi)容 } ()。 } else { m_strOut += m_strFile。 //讀文件 ()。 (m_strFilePath, CFile::modeRead | CFile::typeBinary)。 if (() == IDOK) //打開文件對(duì)話框 m_strFilePath = ()。 ()。 return。 } GetDlgItem(IDC_EDIT_TX) SetWindowText(strOut)。 strTemp += str。in。 n = ()。 CByteArray hexdata。 } else { int i,n。 if(m_check_hextx) { str = DisplayCString2Hex(strOut,true)。 CString str,sTemp。 }雙擊“十六進(jìn)制發(fā)送”復(fù)選框,編輯代碼如下:void CCommassistDlg::OnCheckHextx() { // TODO: Add your control notification handler code here UpdateData()。 //將hexIn內(nèi)容放入IDC_EDIT_RX框內(nèi),即為顯示轉(zhuǎn)換 } else GetDlgItem(IDC_EDIT_RX) SetWindowText(strIn)。 if(m_check_hexrx) { hexIn=DisplayCString2Hex(strIn,true)。 CString hexIn。 GetDlgItem(IDC_BTN_SENDFILE) EnableWindow(true)。 GetDlgItem(IDC_BTN_HANDSEND) EnableWindow(true)。 GetDlgItem(IDC_BTN_CLRTX) EnableWindow(true)。 (自動(dòng)發(fā)送)。 GetDlgItem(IDC_BTN_SENDFILE) EnableWindow(false)。 GetDlgItem(IDC_BTN_HANDSEND) EnableWindow(false)。 GetDlgItem(IDC_BTN_CLRTX) EnableWindow(false)。 //設(shè)置定時(shí) (停止)。 m_bAutoSend = !m_bAutoSend。 m_bAutoSend = !m_bAutoSend。 CDialog::OnTimer(nIDEvent)。}添加WM_TIMER定時(shí)器OnTimer函數(shù)代碼如下:void CCommassistDlg::OnTimer(UINT nIDEvent) { // TODO: Add your message handler code here and/or call default if(nIDEvent == 1) OnBtnHandsend()。}雙擊“清空發(fā)送區(qū)”按鈕,編輯代碼如下:void CCommassistDlg::OnBtnClrtx() { // TODO: Add your control notification handler code here GetDlgItem(IDC_EDIT_TX)。 strIn = 。 m_intRxCnt = 0。}雙擊“清空顯示區(qū)”按鈕,編輯代碼如下:void CCommassistDlg::OnBtnClrrx() { // TODO: Add your control notification handler code here GetDlgItem(IDC_EDIT_RX)。 m_strStatus = 串口: + num + +狀態(tài): + strTXt + , + strRXt + , + 波特率: + strBaud + , + 數(shù)據(jù)位: + strData + , + 停止位: + strStop + , + 校驗(yàn)位: + strCal。 ((),strData)。 ((),strBaud)。 (發(fā)送:%d, m_intTxCnt)。 num = sTemp + 已打開。 UpdateData(true)。 CString num。 CString strRXt。 return dwBytesWritten。 } ShowStatus()。 return dwBytesWritten。m_osWrite)。 bWriteStat=WriteFile(hCom,strOut,dwBytesWritten,amp。dwErrorFlags,amp。 ShowStatus()。 return 0。 } UpdateData()。 dwBytesWritten = ()。 SetDlgItemText(IDC_EDIT_TX,)。 strOut = strTemp。 strTemp += str。in。 n = ()。// GetDlgItem(IDC_EDIT_TX) GetWindowText(strOut)。 CString strTemp。 GetDlgItem(IDC_EDIT_TX) GetWindowText(strOut)。 DWORD dwErrorFlags。 =CreateEvent(NULL,TRUE,FALSE,NULL)。 memset(amp。 DWORD dwBytesWritten=1024。 UpdateData(TRUE)。 return 0。 CDialog::OnClose()。}添加OnClose函數(shù)編輯代碼如下:void CCommassistDlg::OnClose() { // TODO: Add your message handler code here and/or call default TerminateThread(pReceiveThread,0)。 ShowStatus()。 strIn += strTemp。 m_intRxCnt += ()。 } lpInBuffer[dwBytesRead] = NULL。 return dwBytesRead。 if(!bReadStatus) //如果ReadFile函數(shù)返回FALSE { if(GetLastError()==ERROR_IO_PENDING) //GetLastError()函數(shù)返回ERROR_IO_PENDING,表明串口正在進(jìn)行讀操作 { WaitForSingleObject(,2000)。dwBytesRead,amp。 BOOL bReadStatus。 char lpInBuffer[1024]。m_osRead,0,sizeof(OVERLAPPED))。 OVERLAPPED m_osRead。 //設(shè)置發(fā)送文件按鈕不可用 return。 //設(shè)置發(fā)送間隔按鈕不可用 GetDlgItem(IDC_BTN_SELCTFILE)EnableWindow(false)。 //設(shè)置手動(dòng)發(fā)送按鈕不可用 GetDlgItem(IDC_BTN_AUTOSEND) EnableWindow(false)。 //設(shè)置停止位下拉框可用 (true)。 //設(shè)置波特率下拉框可用 (true)。 //顯示關(guān)閉icon (true)。 (RGB(255,0,0))。 ShowStatus()。 } else { CloseComm()。 //設(shè)置選擇文件按鈕可用 GetDlgItem(IDC_BTN_SENDFILE) EnableWindow(true)。 //設(shè)置自動(dòng)發(fā)送按鈕可用 GetDlgItem(IDC_EDIT_TIMER) EnableWindow(true)。 //設(shè)置校驗(yàn)位下拉框不可用 GetDlgItem(IDC_BTN_HANDSEND) EnableWindow(true)。 //設(shè)置數(shù)據(jù)位下拉框不可用 (false)。 //設(shè)置串口號(hào)下拉框不可用 (false)。 //串口打開后文本顏色變綠 ((HICON)LoadImage(AfxGetApp()m_hInstance, MAKEINTRESOURCE(IDI_ICON_OPEN), IMAGE_ICON, GetSystemMetrics(SM_CXICON), GetSystemMetrics(SM_CXICON), 0))。 else { (關(guān)閉串口)。 //啟動(dòng)接收線程 ShowStatus()。 if(!ComIsOK) { OpenComm(nBaud,nData,nStop,nCal)。 return。 if(mnum_buf 0) { MessageBox(獲取串口錯(cuò)誤,錯(cuò)誤,MB_ICONERROR)。 } int mnum_buf。 case 4: nCal = SPACEPARITY。 case 3: nCal = MARKPARITY。 case 2: nCal = EVENPARITY。 case 1: nCal = ODDPARITY。 switch(nTemp) { case 0: nCal = NOPARITY。 break。 break。 break。 } //停止位下拉框設(shè)置================= nTemp=()。 case 3: nData = 8。 case 2: nData = 7。 case 1: nData = 6。 switch(nTemp) { case 0: nData = 5。 break。 break。 break。 break。 break。 break。 break。 break。 break。 break。 break。 break。 break。 break。 break。 //波特率下拉框設(shè)置================= nTemp=()。}//=====================消息處理函數(shù)結(jié)束=====================雙擊“打開串口”按鈕編輯代碼如下:void CCommassistDlg::OnComcontrol() { // TODO: Add your control notification handler code here int nBaud,nData,nStop,nCal,nTemp。 break。 //用AddString添加一個(gè)字符串即COM號(hào)到m_list列表框中 break。 return FALSE。 //設(shè)置焦點(diǎn) (1,1,FALSE)。 //下面語句用于解決程序運(yùn)行后初始化EDIT框內(nèi)容被默認(rèn)自動(dòng)選中狀態(tài) //返回值需更改為FALSE GetFocus()。 //設(shè)置選擇文件按鈕不可用 GetDlgItem(IDC_BTN_SENDFILE)EnableWindow(false)。 //設(shè)置自動(dòng)發(fā)送按鈕不可用 GetDlgItem(I
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1