版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第三章第三章 向控制臺(tái)中向控制臺(tái)中添加按鈕事件添加按鈕事件n第一部分第一部分 n頻率調(diào)節(jié)頻率調(diào)節(jié)操作步驟:n1、打開(kāi)任務(wù)二所完成的工程n2、打開(kāi)IDD_REC_DIALOG控制臺(tái)n3、向控制臺(tái)中添加用來(lái)實(shí)現(xiàn)頻率調(diào)節(jié)的按鈕事件n4、向recDlg.cpp和recDlg.h中添加源程序n5、編譯n6、運(yùn)行n7、講解步驟三:向控制臺(tái)中添加用來(lái)實(shí)現(xiàn)步驟三:向控制臺(tái)中添加用來(lái)實(shí)現(xiàn)頻率調(diào)節(jié)的控件頻率調(diào)節(jié)的控件n1、向“property”group box中添加事件“Static Text”n操作:A、屬性“Caption”:Static改為Wireless FrequencynB、屬性“Align Tex
2、t”:Left改為Centern2、向“property”group box中添加事件“Slider Control”n操作:A、屬性“Auto Ticks”:False改為T(mén)ruenB、屬性“ID”:IDC_SLIDER1改為n IDC_SLIDER_FREQ補(bǔ)充:Slider Control控件n含義:表示滑塊控件,也稱(chēng)跟蹤條。n作用:滑塊控件是一個(gè)包含一個(gè)滑塊和可選刻度線的窗口,當(dāng)用戶使用鼠標(biāo)或者箭頭鍵移動(dòng)滑塊時(shí),滑塊控件發(fā)送通知消息以指示此更改。n3、向“property”group box中添加事件“Edit Control”n操作:A、屬性“Read Only”:False改為T(mén)r
3、uenB、屬性“ID”:IDC_EDIT3改為IDC_EDIT_FREQn如圖3-1所示圖3-1步驟四:向recDlg.cpp和recDlg.h中添加源程序一、在recDlg.cpp中添加源程序n1、在recDlg.cpp中的第13行添加nprotected:n virtual void DoDataExchange(CDataExchange* pDX); nprotected:nDECLARE_MESSAGE_MAP()n2、添加函數(shù)1nvoid CAboutDlg:DoDataExchange(CDataExchange* pDX)nnCDialog:DoDataExchange(pDX
4、);n3、在2下面添加程序nBEGIN_MESSAGE_MAP(CAboutDlg, CDialog)nEND_MESSAGE_MAP()n4、在函數(shù)CrecDlg:CrecDlg(CWnd* pParent )n : CDialog(CrecDlg:IDD, pParent)后添加n , m_EditFreq(0)n5、在4下面添加函數(shù)nvoid CrecDlg:DoDataExchange(CDataExchange* pDX)nnCDialog:DoDataExchange(pDX);nDDX_Text(pDX, IDC_EDIT_FREQ, m_EditFreq);nDDX_Contr
5、ol(pDX, IDC_SLIDER_FREQ, m_SlideFreq);nn6、在5下面添加函數(shù)nBOOL CrecDlg:OnInitDialog()nnCDialog:OnInitDialog();nLoadSettings(); nreturn TRUE;nn7、在6下面添加函數(shù)nvoid CrecDlg:LoadSettings(void)nnCWinApp *pApp=AfxGetApp();nint freq=pApp-GetProfileInt(_T(DRC_MANAGER_V11),n_T(FREQUENCY) , 14);nm_SlideFreq.SetRange(0,2
6、5); nm_SlideFreq.SetPos(freq);nm_EditFreq= 2400+m_SlideFreq.GetPos()*5;nUpdateData(FALSE);nn8、在7下添加函數(shù)nvoid CrecDlg:SaveSettings(void)nnCWinApp *pApp=AfxGetApp();npApp-WriteProfileInt(_T(DRC_MANAGER_V11),n_T(FREQUENCY) , m_SlideFreq.GetPos();nn9、在8下添加函數(shù)nvoid CrecDlg:OnHScroll(UINT nSBCode, UINT nPos,
7、 CScrollBar* pScrollBar)nnm_EditFreq= 2400+m_SlideFreq.GetPos()*5;nSaveSettings();nUpdateData(FALSE);nInvalidate(FALSE);nCDialog:OnHScroll(nSBCode, nPos, pScrollBar);n二、向recDlg.h中添加源程序n1、打開(kāi)recDlg.h文件n2、在程序的第12行添加nvoid LoadSettings(void);n3、在2的后面添加nvoid SaveSettings(void);n4、在enum IDD = IDD_REC_DIALO
8、G ;的下面添加nprotected:nvirtual void DoDataExchange(CDataExchange* pDX);n5、接著添加nprotected:nvirtual BOOL OnInitDialog();n6、在5下面添加nDECLARE_MESSAGE_MAP()n7、在6下面添加npublic:nint m_EditFreq;n8、在7下面添加nCSliderCtrl m_SlideFreq;n9、在8下面添加nafx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);n步驟五:
9、編譯n步驟六:運(yùn)行n第二部分第二部分n連接藍(lán)牙連接藍(lán)牙操作步驟:n1、打開(kāi)任務(wù)三完成的工程n2、添加控件n3、添加源代碼并講解n4、編譯n5、運(yùn)行n6、驗(yàn)收步驟二:添加控件n一、向“Property”group box中添加事件:“Static Text”n操作:A、屬性“Caption”:Static改為 n Port NumbernB、屬性“Align Text”:Left改為Centern二.向“Property”group box中添加事件:“Combo box”n操作:A、屬性“Data”:COM1;COM2; COM3;COM4;COM5;COM6;COM7;n三.向“Proper
10、ty”group box中添加控件“Button”n操作:A、屬性“Caption”:Button1改為 n CONNECT (Bluetooth)nB、屬性“ID”:IDC_BUTTON改為n IDC_BUTTON_COMn如圖3-2所示圖3-2n三、編譯程序n四、運(yùn)行程序步驟三:添加源代碼并講解n一、雙擊Combo Box控件進(jìn)入到redDlg.cpp文件中n1、在recDlg.cpp中添加源代碼:nm_nSettingPort=m_ctrCOMBO_COM.GetCurSel();nSaveSettings();n2、在recDlg.h中添加源程序nint m_nSettingPort;
11、 (18行)nCComboBox m_ctrCOMBO_COM;(31行)n3、編譯程序n4、運(yùn)行程序n二、在recDlg.cpp中添加源程序n1、在函數(shù)nvoid CrecDlg:DoDataExchangen(CDataExchange* pDX)中添加nDDX_Control(pDX, IDC_COMBO1, m_ctrCOMBO_COM);n2、在函數(shù)BOOL CrecDlg:OnInitDialog()中添加nBT_Ack_Flag=0; ngMFTimer=0;gMFTimerFlag=0;gTimer=0;nheadAngle=0;n三、向recDlg.h中添加源程序(19行)n
12、 int headAngle;nunsigned long gTimer;nint gMFTimer;nint gMFTimerFlag;n int BT_Ack_Flag;n四、編譯程序n五、運(yùn)行程序六、在recDlg.cpp中添加源程序n1、在函數(shù)void CrecDlg:LoadSettings(void)中添加nm_nSettingPort = pApp-GetProfileIntn(_T(DRC_MANAGER_V11), _T(COMPORTNUM) , 0);nm_ctrCOMBO_COM.SetCurSel(m_nSettingPort);n2、在函數(shù)void CrecDlg:
13、SaveSettings(void)中添加npApp-WriteProfileIntn(_T(DRC_MANAGER_V11), _T(COMPORTNUM) , m_nSettingPort);n3、編譯程序n4、運(yùn)行程序七、雙擊控件CONNECT (Bluetooth)進(jìn)入到recDlg.cpp文件中n1、在函數(shù)void CrecDlg:OnBnClickedButtonCom()中添加n CString str;nif(m_OpenSatus=false)nm_nSettingPort=m_ctrCOMBO_COM.GetCurSel();nstr.Format(_T(COM%d), m
14、_nSettingPort+1);nif( !m_CommPort.OpenPort( str, CBR_4800,m_nSettingPort )nnstr.Format(_T(COM%d open fail rn Please check port), m_nSettingPort+1);nAfxMessageBox(str);nGetDlgItem(IDC_BUTTON_COM)-SetWindowText(_T(CONNECT (Blurtooth);nGetDlgItem(IDC_BUTTON_MOTION)-EnableWindow(FALSE);nm_OpenSatus=fals
15、e;nnelsenstr.Format(_T(COM%d open ok), m_nSettingPort+1);nGetDlgItem(IDC_BUTTON_COM)-SetWindowText(_T(DISCONNECT (Blurtooth);nGetDlgItem(IDC_BUTTON_MOTION)-EnableWindow(TRUE);nm_OpenSatus=true;nSendHead2BT(70);nnnnelsenstr.Format(_T(COM%d), m_nSettingPort+1);nm_CommPort.ClosePort();nGetDlgItem(IDC_B
16、UTTON_COM)-SetWindowText(_T(CONNECT (Blurtooth);nGetDlgItem(IDC_BUTTON_MOTION)-EnableWindow(FALSE);nm_OpenSatus=false;nnBT_Ack_Flag=0;nSaveSettings();nhCommWnd = m_hWnd;n2、添加新函數(shù)nvoid CrecDlg:SendHead2BT(BYTE command)nnint i;nDWORD nCount =2;nfor( i=1; iEnableWindow(FALSE);nnif(InitUSB1(robotdata63)=
17、0)nnGetDlgItem(IDC_BUTTON_CON)-EnableWindow(TRUE);nnreturn ;n/GetDlgItem(IDC_BUTTON_CON)-EnableWindow(TRUE);nSetTimer(1,50,NULL); /50ms timer inter- OnTimerGetDlgItem(IDC_SLIDER_FREQ)-EnableWindow(FALSE);nnnelse /connect statusn AfxMessageBox(_T(Reboot Vision Station &Softwarern),MB_OK,0);nnSendMess
18、age(WM_CLOSE,0,0); nnnInvalidate(FALSE); n3、添加函數(shù)nint CrecDlg:InitUSB1(BYTE Freg) nnunsigned long msgWritten;nBYTE txMsg128=0;nBYTE rxMsg10000=0;nint con_flag=1; nCString str;nnbConnectedDevices = GetUsbDeviceListName(&strConnectedDevices1);nif(!nbConnectedDevices)nnAfxMessageBox(_T(Please Turn on th
19、e Vision station),MB_OK,0);nreturn 0;nnusb_flag=1; nnnptDevice1 = (PDEVICE) malloc(sizeof(DEVICE);nptDevice1-name = _strdup(strConnectedDevices10);nptDevice1-txrate = 0;nptDevice1-number = deviceNumber+;nptDevice1-next = listOfDevice1;nptDevice1-active = Y;nn/ open the devicenif (pipe1.Open(ptDevice1-name)nstr.Format(_T( Err : Can not open device %dn%s rn), ptDevice1-number, ptDevice1-name);nAfxMessageBox(_T(Reboot Vision Station & Softwarer
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年違約借款合同違約責(zé)任追究辦法3篇
- 2025年度個(gè)人房屋買(mǎi)賣(mài)價(jià)格調(diào)整及支付合同4篇
- 2025年度企業(yè)應(yīng)收賬款債權(quán)轉(zhuǎn)讓與風(fēng)險(xiǎn)控制協(xié)議書(shū)3篇
- 2025年度房地產(chǎn)樣板間設(shè)計(jì)與施工合同范本4篇
- 2025年度電子商務(wù)個(gè)人勞務(wù)派遣合作協(xié)議書(shū)4篇
- 工廠租地合同(2篇)
- 二零二五年度民政局離婚協(xié)議書(shū)模板法律咨詢附加服務(wù)合同4篇
- 2025年度銷(xiāo)售顧問(wèn)市場(chǎng)調(diào)研聘用合同2篇
- 2024西部縣域經(jīng)濟(jì)百?gòu)?qiáng)研究
- STEM教育實(shí)踐講解模板
- 2025年山東浪潮集團(tuán)限公司招聘25人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年財(cái)政部會(huì)計(jì)法律法規(guī)答題活動(dòng)題目及答案一
- 2025年江西省港口集團(tuán)招聘筆試參考題庫(kù)含答案解析
- (2024年)中國(guó)傳統(tǒng)文化介紹課件
- 液化氣安全檢查及整改方案
- 《冠心病》課件(完整版)
- 2024年云網(wǎng)安全應(yīng)知應(yīng)會(huì)考試題庫(kù)
- 公園保潔服務(wù)投標(biāo)方案
- 光伏電站項(xiàng)目合作開(kāi)發(fā)合同協(xié)議書(shū)三方版
- 高中物理答題卡模板
- 芳香植物與芳香療法講解課件
評(píng)論
0/150
提交評(píng)論