VC++常用函数

上传人:人*** 文档编号:553340870 上传时间:2022-12-27 格式:DOC 页数:86 大小:333KB
返回 下载 相关 举报
VC++常用函数_第1页
第1页 / 共86页
VC++常用函数_第2页
第2页 / 共86页
VC++常用函数_第3页
第3页 / 共86页
VC++常用函数_第4页
第4页 / 共86页
VC++常用函数_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《VC++常用函数》由会员分享,可在线阅读,更多相关《VC++常用函数(86页珍藏版)》请在金锄头文库上搜索。

1、itoa(num, str, 10);printf(The number num is %d and the string str is %s. n ,num, str);itoa()函数有3个参数:第一个参数是要转换的数字,第二个参数是要写入转换结果的目标字符串,第三个参数是转移数字时所用的基数。在上例中,转换基数为10。10:十进制;2:二进制.CWnd*和HWND差别很大 HWND是SDK 定义的类型,是一个无确切意义的32-bit值,在调用 API 时用于指代窗体。 CWnd*是一个有确切意义的指针,指向一个MFC窗体类CWnd 的实例。因为 MFC对SDK做了封装,大部分调用都可以用

2、CWnd*作为参数,所以很容易混淆。从一个CWnd*获取句柄的方法是 pWnd-GetSafeHwnd(),他比pWnd-m_hWnd 安全,因为前者在 pWnd = NULL 的时候返回 NULL 而后者出现 access violation 从hWnd转换到CWnd * 一个可以使用的方法是 CWnd:FromHandle CWnd *pTempWnd = CWnd:FromHandle(hWnd); / 如果 hWnd存在对应的CWnd*,则返回其指针,否则,创建一个 MFC 临时窗体并返回其指针。 注意这个函数会返回临时窗体的指针,如果需要更安全,调用 CWnd:FromHandleP

3、ermanent ,他在不存在对应的CWnd*时返回NULL。 GetDlgItem CWnd:GetDlgItem 是CWnd的成员函数,如果在CWnd派生的类中使用,可直接使用 CWnd* pWnd = GetDlgItem(ID_XXX); 否则,用SDK函数 HWND GetDlgItem( HWND hDlg, int nIDDlgItem);这样用: HWND hWnd; :GetDlgItem(hWnd,ID_XXX); CWnd* pWnd=CWnd:FromHandle(hWnd);/或创建一个CWnd对象Attach上去CComboBox *myBox1 = (CCombo

4、Box *)GetDlgItem(IDC_COM_PORT);/myBox-SetTopIndex(1);myBox1-SetCurSel(0);CComboBox *myBox2 = (CComboBox *)GetDlgItem(IDC_COM_BAUD);myBox2-SetCurSel(1);CEdit* output;/首先获得CEdit控件的指针, output=(CEdit*) GetDlgItem(IDC_EDIT1); /添加显示内容 output-SetWindowText(m_sShowText);上面就是通过GetDlgItem获得指向Edit控件的指针GetDlgIt

5、emText函数里面的个参数:第一个是句柄API都得通过句柄操作,如果在MFC中,本项可以不写,默认为this第二个为ID,即你想要得到那个控件的ID第三个为TEXT值,你得先定义一个字符串用来获取该值第四个为文本最大长度例如得到IDC_BUTTON1的caption:CStringsCaption;GetDlgItemText(IDC_BUTTON1,sCaption);函数功能:该函数获取对话框中与控制有关的文本或标题。函数原型:UINT GetDlgltemText(HWND hDlg,int nlDDlltem,LPTSTR IpString int nMazCount);参数: hD

6、lg:指向含有控制的对话框的句柄。 nlDDlgltem:指定标题或文本将被检索的控制的标识符。 IpString:指向获取标题或文本的缓冲器的指针。 nMaxCount:指定被复制到lpString参数指向的缓冲区的字符串的最大长度。如果字符串的字符最大长度超过范围,则该字符串被截断。 返回值:如果函数调用成功,则返回值表示被复制缓冲区的字符串的长度,不包括以NULL结尾的字符串。如果函数调用失败,则返回值为零。若想获得更多错误信息,请调用GetLastError函数。 备注: GetDlgltemText函数把一个WM_GETTEXT消息发送到控制。串口通讯中的DCB结构typedef s

7、truct _DCB/ dcb DWORD DCBlength; / sizeof(DCB) DWORD BaudRate; / current baud rate/ 指定当前的波特率 DWORD fBinary: 1; / binary mode, no EOF check/ 指定是否允许二进制模式,/ WINDOWS 95中必须为TRUE DWORD fParity: 1; / enable parity checking/ 指定奇偶校验是否允许 DWORD fOutxCtsFlow:1; / CTS output flow control/ 指定CTS是否用于检测发送控制。/ 当为TRU

8、E是CTS为OFF,发送将被挂起。 DWORD fOutxDsrFlow:1; / DSR output flow control/ 指定CTS是否用于检测发送控制。/ 当为TRUE是CTS为OFF,发送将被挂起。 DWORD fDtrControl:2; / DTR flow control type/ DTR_CONTROL_DISABLE值将DTR置为OFF, DTR_CONTROL_ENABLE值将DTR置为ON, DTR_CONTROL_HANDSHAKE允许DTR握手,DWORD fDsrSensitivity:1; / DSR sensitivity 当该值为TRUE时DSR为O

9、FF时接收的字节被忽略; DWORD fTXContinueOnXoff:1; / XOFF continues Tx/ 指定当接收缓冲区已满,并且驱动程序已经发/ 送出XoffChar字符时发送是否停止。/ TRUE时,在接收缓冲区接收到缓冲区已满的字节XoffLim且驱动程序已经发送出XoffChar字符中止接收字节之后,发送继续进行。/ FALSE时,在接收缓冲区接收到代表缓冲区已空的字节XonChar且驱动程序已经发送出恢复发送的XonChar之后,发送继续进行。 DWORD fOutX: 1; / XON/XOFF out flow control/ TRUE时,接收到XoffCha

10、r之后便停止发送/ 接收到XonChar之后将重新开始 DWORD fInX: 1; / XON/XOFF in flow control/ TRUE时,接收缓冲区接收到代表缓冲区满的XoffLim之后,XoffChar发送出去/ 接收缓冲区接收到代表缓冲区空的XonLim之后,XonChar发送出去 DWORD fErrorChar: 1; / enable error replacement/ 该值为TRUE且fParity为TRUE时,用ErrorChar 成员指定的字符代替奇偶校验错误的接收字符 DWORD fNull: 1; / enable null stripping/ TRUE

11、时,接收时去掉空(0值)字节 DWORD fRtsControl:2; / RTS flow control RTS_CONTROL_DISABLE时,RTS置为OFF RTS_CONTROL_ENABLE时, RTS置为ON RTS_CONTROL_HANDSHAKE时,/ 当接收缓冲区小于半满时RTS为ON/ 当接收缓冲区超过四分之三满时RTS为OFF RTS_CONTROL_TOGGLE时,/ 当接收缓冲区仍有剩余字节时RTS为ON ,否则缺省为OFF DWORD fAbortOnError:1; / abort reads/writes on error/ TRUE时,有错误发生时中止

12、读和写操作 DWORD fDummy2:17; / reserved/ 未使用 WORD wReserved; / not currently used/ 未使用,必须为0 WORD XonLim; / transmit XON thresholdCOMMTIMEOUTSCOMMTIMEOUTS 结构体被用在SetCommTimeouts和GetCommTimeouts 函数中,以便设置和查询通讯设备的超时参数。这个参数决定ReadFile, WriteFile, ReadFileEx, 和WriteFileEx 操作设备的行为。typedef struct _COMMTIMEOUTS DWO

13、RD ReadIntervalTimeout; DWORD ReadTotalTimeoutMultiplier; DWORD ReadTotalTimeoutConstant; DWORD WriteTotalTimeoutMultiplier; DWORDWriteTotalTimeoutConstant; COMMTIMEOUTS, *LPCOMMTIMEOUTS;成员ReadIntervalTimeout 在通讯过程中接收两个字符之间的最长超时时间,按毫秒计算。在ReadFile操作,当接收到第一个字符时,开始一个计时周期。如果接收任意两个字符之间的时隔超过本限制,ReadFile操作

14、将完成并返回任何已缓冲的数据。0代表本参数未设置。 如果设置为MAXDWORD, 并且ReadTotalTimeoutConstant和ReadTotalTimeoutMultiplier成员为0,代表读取操作立即返回那些已接收的数据,即使没有收到任何字符。(两个字符之间的接收间隔)ReadTotalTimeoutMultiplier 乘数用于计算读取操作的总超时时间,按毫秒计算。对于每个读取操作,这个值将乘以要读取的字节数。(读取单个字符的最大超时)ReadTotalTimeoutConstant 一个用于计算对于读取操作的总超时周期的常数,按毫秒计算。对每次读取操作,实际总超时时间为Rea

15、dTotalTimeoutMultiplier 成员与请求的字节数年的乘积加此值。ReadTotalTimeoutMultiplier和ReadTotalTimeoutConstant成员为0代表总读取总超时时间无效(读取所有字节的时间为ReadTotalTimeoutMultiplier*BytesToRead+ReadTotalTimeoutConstant)。WriteTotalTimeoutMultiplier 乘数用来计算写操作的总超时周期,按毫秒计算。对每个写操作,这个值将乘以要写入的字节数。(写单个字符的最大超时) WriteTotalTimeoutConstant 一个用于计算写入操作的总超时周期的常数,按毫秒计算。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号