内容发布更新时间 : 2024/11/18 12:25:46星期一 下面是文章的全部内容请认真阅读。
MFC各种控件的使用说明
把整数显示为时间格式的方法:
Int minute=5; int sec=5; CString strTime;
strTime.Format(\ GetDlgItem(IDC_STAT_DIS)->SetWindowText(strTime);
定时器的使用方法:
在函数BOOL CDingshiqiDlg::OnInitDialog()
{
SetTimer(1,1000,NULL);
}添加语句 SetTimer(1,1000,NULL);定时器1秒钟中断一次. 然后添加消息WM_TIMER对应的消息函数: void CDingshiqiDlg::OnTimer(UINT nIDEvent) { }
播放系统声音的方法:在头文件添加这两句
#include
#pragma comment (lib,\
然后调用函数: PlaySound(\
VC++6.0控件工具箱:
2 图形控件(picture):常用于显示位图(Bitmap)和图标(Icon)
3 静态文本(Static Text):MFC提供了CStatic类支持静态控件。
(1)更改该控件上字体的方法是:该控件的ID为IDC_STATIC1,IDC_STATIC2. CFont * f1; f1 = new CFont; f1 -> CreateFont( 25 , // nHeight 15, // nWidth 0 , // nEscapement 0 , // nOrientation FW_BOLD, // nWeight FALSE , // TRUEbItalic FALSE, // bUnderline
0 , // cStrikeOut DEFAULT_CHARSET, //ANSI_CHARSET nCharSet OUT_DEFAULT_PRECIS, // nOutPrecision CLIP_DEFAULT_PRECIS, // nClipPrecision DEFAULT_QUALITY, // nQuality DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily _T( \宋体 \)); // lpszFac GetDlgItem(IDC_STATIC1)-> SetFont(f1); GetDlgItem(IDC_STATIC2)-> SetFont(f1); 另一种改变字体大小的方法: 在函数外定义
CStatic m_static; CFont font;
m_static.SubclassDlgItem(IDC_STAT_DIS,this); LOGFONT log;
GetObject(::GetStockObject(DEFAULT_GUI_FONT),sizeof(log),&log); log.lfHeight=300; //改 log.lfWidth=120; //改
log.lfCharSet=GB2312_CHARSET; lstrcpy(log.lfFaceName, _T(\宋体\ font.CreateFontIndirect(&log); m_static.SetFont(&font);
(2) 把整数显示在该控件的方法:IDC_STAT_DIS为控件ID Int minute=5,sec=5; CString strTime;
strTime.Format(\ GetDlgItem(IDC_STAT_DIS)->SetWindowText(strTime); 另外一种显示的方法: CStatic*pst=(CStatic *)GetDlgItem(IDC_STAT_DIS); pst->SetWindowText(\
4 编辑框(Edit Box):MFC提供了CEdit类支持编辑框控件。
(1)获取该控件上数字的方法: int edit_n1=0,edit_n2=0; edit_n1=GetDlgItemInt(IDC_EDIT1);
edit_n2=GetDlgItemInt(IDC_EDIT2); 5 组成框(Group Box):
6 按钮(Button):MFC提供了CButton类支持按钮控件。
(1) 获取按键上的文字看是否与指定的文字相等
CString str1; GetDlgItem(IDC_STOP)->GetWindowText(str1);
(2) if( str1==\暂停\{ GetDlgItem(IDC_STOP)->SetWindowText(\继续\设置按键上显示某文字 } else
GetDlgItem(IDC_STOP)->SetWindowText(\暂停\改变按钮文字上的方法 CFont * f2;
f2 = new CFont;
f2 -> CreateFont( 25 , // nHeight 15, // nWidth
0 , // nEscapement 0 , // nOrientation FW_BOLD, // nWeight FALSE , // TRUEbItalic FALSE, // bUnderline 0 , // cStrikeOut
DEFAULT_CHARSET, //ANSI_CHARSET nCharSet OUT_DEFAULT_PRECIS, // nOutPrecision CLIP_DEFAULT_PRECIS, // nClipPrecision DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily _T( \宋体 \)); // lpszFac
GetDlgItem(IDC_STOP)-> SetFont(f2);
(3)该按钮显示灰色与正常的设置方法和判断按钮是否为灰色的方法:
灰色:(CButton *)GetDlgItem(IDC_STOP)->EnableWindow(FALSE);
正常显示:(CButton *)GetDlgItem(IDC_STOP->EnableWindow(TRUE);
判断按钮是否为黑色的方法CButton*cm1=((CButton*)GetDlgItem(IDC_STOP));
if(cm1->IsWindowEnabled())
{}