zoukankan      html  css  js  c++  java
  • MFC常用函数

    1、MFC的常用函数(只是找了些经常使用的,这里没有的可以CSDN查找,不需要都记住,经常使用自动就会记得)

    1)GetDlgItemText(ID ,str)作用:

    对话框中获取文本第一个参数为要获取的编辑框(或者静态文本框、单选按钮等可以显示内容的控件)的ID,第二个参数为字符串(Cstring 类型)的变量,获取的文本存储在str中。

    2)SetDlgItemText(ID,str)

    作用:将字符串显示在控件中

    第一个参数为要显示的编辑框(或者静态文本框、单选按钮、组合框等可以显示内容的控件)的ID,第二个参数为字符串(Cstring 类型)的变量,显示的文本存储在str中。

    如果要显示的变量的类型不是Cstring,则通过Format函数强制转换。通常还要加一个UpDateData(FALSE)。

    3)UINT nID=GetCheckedRadioButton(IDC1, IDC2);

    作用:获取单选框的选项的ID

    第一个参数为该组合框中第一个单选按钮的ID,第二个参数为该组合框中最后一个按钮的ID。

    4)CheckRadioButton(IDC1, IDC2, IDC3);

    作用:初始化单选按钮

    第一个参数为该组合框中第一个单选按钮的ID,第二个参数为该组合框中最后一个按钮的ID,第三个参数为为缺省选项的ID。

    5)m_scrollBar.SetScrollRange(0, 500) ;

    作用:设置水平滚动条的取值范围,m_scrollBar为水平滚动条的控制类型的变量,0为设置最小值,500为设置的最大值。

    6)m_nAmount = m_slider.GetPos() ;

    作用:获取滑块的当前位置。

    7)m_slider.SetRange(0,1000) ;

    作用://设置滑块取值范围

    第一个参数为设置的最小值,第二个参数为设置的最大值。

    8)double Volum = atof(strCtrl);

    作用:将字符串strCtl转换成浮点型的Volum

    9)int Volum = atoi(strCtrl);

    作用:将字符串strCtl转换成整型的Volum

    10)MessageBox(str) ;(局部函数)

    作用:输出字符串str

    11)AfxMessageBox(str) ;(全局函数)

    作用:输出字符串str

    12)tempt = m_time2.Format("%H:%m:%S") ;

    作用:将时间转化成字符型(时、分、秒)

    m_time2为日历时间选取器的变量,tempt为CString型变量

    13)tempt = m_time.Format("%Y-%m-%d") ;//将时间转化成字符型

    作用:将时间转化成字符型(年、月、日)

    m_time2为日历时间选取器的变量,tempt为CString型变量

    14)m_time = CTime::GetCurrentTime();

    作用:获取系统当前时间

    m_time为Ctime类型的变量。

    15)m_list.AddString(str);

    功能:将Cstrig类型的变量的内容显示在列表框中(或者组合框中)。m_str为ClistBox类型的变量(或者是CcomboBox类型的变量)。

    16)m_time = CTime(2012 ,5 ,28 ,0 ,0 ,0) ;

    功能:初始化日期,m_time为Ctime类型的变量

    17)str.TrimLeft();

    功能:去掉Cstring类型变量的左边的空格

    18)str.TrimRight();

    功能:去掉Cstring类型变量的右边的空格

    19)str.IsEmpty();

    功能:判断Cstring类型的变量str是否为空,如果为空则返回1,否则返回零。

    20)int nIndex=m_list.FindString(int k,str);

    从第k个位置开始查找,若为-1,则从头至尾查找。

    函数原型:

    int FindString(int nStartAfter,LPCTSTR lpszItem) const;

    int FindStringExact(int nIndexStart,LPCTSTR lpszFind) const;

    其中,FindStringExact的查找精度最高

    21)m_list.ResetContent() ;

    功能:清空列表框中的内容

    m_list为ClistBox类型变量。

    22)m_listSearch.DeleteString(int nIndex);

    功能:删除列表框中的第nIndex条记录。

    m_listSearch为ClistBox类型变量。

    23)GetDlgItem(IDC_BUTTON_DELETE)->EnableWindow(FALSE);

    功能:是ID为IDC_BUTTON_DELETE的按钮灰选。

    24)GetDlgItem(IDC_BUTTON_DELETE)->EnableWindow(TRUE);

    功能:是ID为IDC_BUTTON_DELETE的按钮还原。

    25)str.Left(length);

    功能:获取字符串str左边长度为length的值。

    26)int length = str.GetLength() ;

    功能:获取字符串str的长度

    27)dlg.DoModal() ;

    功能:建立一个对话框

    dlg为该对话框的类的对象。

    28)CDialog::OnCancel() ;

    功能:关闭窗口

    29)CMenu* pSysMenu=GetMenu();

    功能:获取程序菜单指针

    30)int nCount=pSysMenu->GetMenuItemCount();

    功能:获取项层菜单项的项数

    31)int nIndex=m_ListBox.GetCurSel();

    功能:获取指针在列表框中的位置

    m_ListBox为ClistBox类型变量。

    32)GetWindowText(str) ;

    功能:获取当前窗口的标题

    Str为Cstring 类型的变量

    33)GetDlgItem(IDC_CLICKHERE)->SetFocus();

    将光标设置在控件IDC_CLICKHERE处,若是在打开某个对话框时候做此设置,则将该语句加到消息处理函数OnInitDialog的return语句前,并且将最后的语句 return TRUE; 该为

    return FALSE;GetDlgItem(IDC_CLICKHERE)->SetFocus();也可写成m_strit.SetFocus();其中m_strit为该控件对应的变量。

    34)GetDlgItem(IDC_STATIC_NUMBER1)

    功能:获取ID为IDC_STATIC_NUMBER1控件的指针.

    例如:

    CString str ;

    GetDlgItem(IDC_STATIC_NUMBER1)->GetWindowText(str) ;//此句等价于

    GetDlgItemText(IDC_STATIC_NUMBER1,str);

    35)int num1 = GetDlgItemInt(IDC_EDIT1);

    功能:获取ID为IDC_EDIT1控件的文本并且转化成整形的值,如果文本中含有非数字字符则转化失败.

    36)SetDlgItemInt(IDC_EDIT3,num3) ;

    功能:将整数num3显示在ID为IDC_EDIT3的编辑框中.

    37)SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)ch1);

    注意:在函数前面加上作用域分节符表示调用的是全局函数.

    功能:取ID为IDC_EDIT1控件的文本,获取的最大长度为10,并且将获取的内容存储在ch1中.相当于GetDlgItemText(IDC_EDIT1,ch1,10);

    说明:第一个参数为对应控件的句柄,第二个参数为消息名称,第三个参数为获取文本的最大长度,第四个参数为存储文本的缓冲区,此处ch1为字符数组,即 char ch110];

    第四个参数的类型必须强制转换成LPARAM.

    此函数有多种调用方式,其功能是相同的。列举如下:

    (1) SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)ch1);

    (2) GetDlgItem(IDC_EDIT1)->SendMessage(WM_GETTEXT,10,(LPARAM)ch1);

    (3) m_edit1.SendMessage(WM_GETTEXT,10,(LPARAM)ch1);

    (4) SendMessage(m_edit1.m_hWnd,WM_GETTEXT,10,(LPARAM)ch1);

    其中m_edit1是IDC_EDIT1控件的类别为Control,类型为CEdit的变量.

    38)SendMessage(GetDlgItem(IDC_EDIT3)->m_hWnd,WM_SETTEXT,0,(LPARAM)ch3);

    功能:将缓冲区ch3的内容显示在D为IDC_EDIT1控件上.其作用相当于SetDlgItemText(IDC_EDIT1,ch1);

    说明:第一个参数为对应控件的句柄,第二个参数为消息名称,第三个参数用不上,故设置为零,第四个参数为要显示的文本内容, 第四个参数的类型必须强制转换成LPARAM.

    39)SendDlgItemMessage(IDC_EDIT1,WM_GETTEXT,10,(LPARAM)ch1);

    功能等价于::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd,WM_GETTEXT,10,(LPARAM)ch1);

    40)SendDlgItemMessage(IDC_EDIT3,WM_SETTEXT,0,(LPARAM)ch3);

    功能等价于::SendMessage(GetDlgItem(IDC_EDIT3)->m_hWnd,WM_SETTEXT,0,(LPARAM)ch3);

    2.总结

    有了这些MFC的函数对于操作界面很轻松了,好好多做些demo,来熟练这些函数,明天再写一些数据类型,就可以写一些小游戏了。

                                              改变自己,从现在做起-----------久馆

  • 相关阅读:
    poj 1084 Brainman(归并排序)
    Poj 2299 Ultra-QuickSort(归并排序)
    poj 1068 Parencodings(栈)
    Poj 2499 Binary Tree(贪心)
    Poj 2255 Tree Recovery(二叉搜索树)
    poj 2021 Relative Relatives(暴力)
    Poj 2092 Grandpa is Famous(基数排序)
    解决UMeditor上传图片失败
    解决使用了属性overflow:scroll、overflow-y:scroll、overflow-x:scroll;的网页在iPhone iOS Safari浏览器中滑动不流畅问题
    Kindeditor上传图片报错
  • 原文地址:https://www.cnblogs.com/zzw19940404/p/14013397.html
Copyright © 2011-2022 走看看