MFC 常用语句总结

GetDlgItem(控件的ID)->SetFocus();//MFC 中获取对话框中控件焦点的方法
GotoDlgCtrl((CEdit*)GetDlgItem(IDC_EDIT1));//设置焦点在第一个编辑框  
CString str;
GetDlgItem(IDC_EDIT1)->GetWindowText(str);///ID_EDIT1是你文本框的ID 获取编辑框内容r
SetDlgItemText(IDC_EDIT_NAME1,str); //显示编辑框内容
UpdateData(true);//更新控件值,显示的值传给变量
UpdateData(false);//用控件值更新窗口显示,将变量值传给控件显示

ShowWindow(SW_SHOWMAXIMIZED);///在对话框类的初始化函数中添加代码 窗口全屏显示 
CDialog::EndDialog( ID );//关闭窗口
SYSTEST    dlg;dlg.DoModal();//打开对话框,SYSTEST对话框类名

GetDlgItem(IDC_XXX)->EnableWindow(false)//禁用IDC_XXX为你想变灰的按钮的ID
GetDlgItem(IDC_XXX)->EnableWindow(true)//启用
m_btnedit. EnableWindow (0);//控件不可用(变灰)m_btnedit控件变量
m_btnedit. EnableWindow (1);//控件可用 
m_btnedit.ShowWindow (0);//控件不显示
m_btnedit.ShowWindow (1);//控件显示
m_List.ShowWindow(SW_HIDE);//不显示
m_List.ShowWindow(SW_SHOW);//显示  

/*BOOL SetWindowPos(const CWnd* pWndInsertAfter,int x,int y,int cx,int cy,UINT nFlags);
第一个参数,一般设为NULL;
x、y控件位置;cx、cy控件宽度和高度;
nFlags常用取值:
SWP_NOZORDER:忽略第一个参数;
SWP_NOMOVE:忽略x、y,维持位置不变;
SWP_NOSIZE:忽略cx、cy,维持大小不变*/
CWnd *pWnd;
pWnd = GetDlgItem( IDC_BUTTON1 );     //获取控件指针,IDC_BUTTON1为控件ID号
pWnd->SetWindowPos( NULL,50,80,0,0,SWP_NOZORDER | SWP_NOSIZE );     //把按钮移到窗口的(50,80)处
pWnd = GetDlgItem( IDC_EDIT1 );
pWnd->SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER | SWP_NOMOVE );     //把编辑控件的大小设为(100,80),位置不变
pWnd = GetDlgItem( IDC_EDIT1 );
pWnd->SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER );     //编辑控件的大小和位置都改变
CWnd *pWnd;
pWnd = GetDlgItem( IDC_EDIT1 );     //获取控件指针,IDC_EDIT1为控件ID号
pWnd->MoveWindow( CRect(0,0,100,100) );     //在窗口左上角显示一个宽100、高100的编辑控件

/*图片按钮*/                                                                                                                            BMP 按钮
Owner draw 属性,不需要选择 Bitmap 属性.                                                                 
在对话框类中添加成员变量,类型为CBitmapButton ,变量名为m_BitmapBtn1,全局变量或局部变量均可
DDX_Control( pDX, IDC_BUTTON1, m_BitmapBtn1);//在对话框类的DoDataExchange函数中添加代码
m_BitmapBtn1.LoadBitmaps(IDB_BITMAP1,IDB_BITMAP1);//在对话框类的初始化函数中添加代码                                          
//LoadBitmaps(初始化加载图片,按下状态的图片,获取焦点的图片,正常状态图片);                             
HBITMAP hBmp=::LoadBitmap(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP_SET)); //图片控件,Bitmap属性设为true
m_Btn.SetBitmap(hBmp);//直接给CButton加图片

/*数据类型转换*/
//CTime转CStringCTime();
t=CTime::GetCurrentTime();
CString sur;
sur.Format("%s",t.Format("%Y-%m-%d"));
MessageBox(sur);   
// long-->CString
long a;
CString b;
b.format("%ld",a);
//double--->CString
double a;
CString b;
b.format("%.2f",a)
//CString转CTime
CStringsur;
sur="2006-08-09";
COleDateTime time1;
time1.ParseDateTime(sur);
SYSTEMTIME systime;
VariantTimeToSystemTime(time1, &systime);
CTime tm(systime);
m_time=tm;
UpdateData(false);
//int转CString
int n=1;
CString str;
str.Format("%d",n);
//CString转int
CString str="1";
int n=_ttoi(str);
//char*转CString
char sz[128];     
CString str;
str.Format("%s",sz);
//CString转char*
CString str;
int nLength=str.GetLength();
char* sz=new char[nLength];
sz=str.GetBuffer(0);
//float/double转CString
float f=0.0;
CString str;
str.Format("%f",f);
//CString转float/double
CString str="0.0";
float f=_tto(str);

//字体颜色
CFont cfont; //这个是全局的。放到include的下面
cfont.CreateFont(40, //字体大小
   0,                         // nWidth
   0,                         // nEscapement
   0,                         // nOrientation
   FW_SEMIBOLD,                 // nWeight
   FALSE,                     // bItalic
   FALSE,                     // bUnderline
   0,                         // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, "Arial"); // 字体
CWnd* pWnd = GetDlgItem(IDC_STATIC); // 静态文本的编号
GetDlgItem(IDC_STATIC10)->SetFont(&cfont); // 静态文本的编号
m_brush.CreateSolidBrush(RGB(255,0,0));
HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
    HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
    for(int i=0; i<36; i=i+1)
{
   if(nCtlColor==CTLCOLOR_EDIT &&
     pWnd->GetDlgCtrlID()==IDC_EDIT16+i)

   {
   pDC->SetTextColor(RGB(0,0,0));
   pDC->SetBkColor(RGB(0,255,0));//设置文本背景色
   pDC->SetBkMode(RGB(0,255,0));//设置背景透明
   hbr = (HBRUSH)m_brush;
   }
}    
    return hbr;
}                        

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兵哥工控

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值