MFC基础编程
乔sir
这个作者很懒,什么都没留下…
展开
-
获取中文星期几的方法
SYSTEMTIME SystemTime; 需要头文件windows.hGetSystemTime(&SystemTime);这样获取的星期显示的阿拉伯数字,要想出现中文的,需要加一个switch判断。具体办法如下:CString cstrm_strWeek;switch (SystemTime.wDayOfWeek){case 0:cstrm_strWee原创 2015-02-06 10:14:30 · 1359 阅读 · 0 评论 -
单个控件字体设置的方法
前面介绍了如何设置整个对话框的字体,下面将介绍如何设置单个控件的字体。各个控件字体设置的方法一:CFont *pFont = newCFont;pFont->CreatePointFont(90,_T("Arial"));控件对象.SetFont(pFont); 方法二:CFont *pFont = newCFont;pFont->CreateFont(15,0原创 2015-02-06 10:21:26 · 542 阅读 · 0 评论 -
控件颜色的设置
一MFC改变控件颜色的方法:MFC应用程序中,要改变控件的背景色可通过重载OnCtlColor()函数来实现。方法是在该函数中设置所需颜色后再返回一个画刷句柄便可重绘控件背景色。OnCtlColor()函数对于控件背景色的处理是通过捕捉相应的控件消息来实现的。 常用的此类消息有: CTLCOLOR_DLG 对话框 CTLCOLOR_EDIT 编辑原创 2015-02-06 10:30:01 · 1127 阅读 · 0 评论 -
按钮颜色的设置
前面介绍了如何设置动态创建的控件的颜色,但是却不能为按钮设置,接下来将介绍如何单独设置按钮的颜色。具体方法如下:CMFCButton m_button.m_bTransparent = FALSE; // 指示按钮是否是透明的CMFCButton m_button.m_bDontUseWinXPTheme = TRUE;CMFCButton m_butto原创 2015-02-06 10:31:25 · 2767 阅读 · 0 评论 -
给对话框整个面板设置背景颜色的方法
在OnPaint()函数的else中,写上:CRect rc;GetClientRect(&rc); //获取客户区CPaintDCdc(this); dc.FillSolidRect(&rc, RGB(0, 160, 0));原创 2015-02-06 10:37:01 · 499 阅读 · 0 评论 -
如何美化动态创建的编辑框的边框
动态创建的编辑框的边框颜色一般是黑色的,看起来很不好看,那么如何让它好看些呢,调用下面两个函数就能实现:m_edit_key.ModifyStyleEx(0,WS_EX_CLIENTEDGE, SWP_FRAMECHANGED);m_edit_key.SetFont(this->GetFont());原创 2015-02-06 10:37:50 · 636 阅读 · 0 评论 -
在MFC中设置整个对话框字体
方法如下:CFont *pFont = newCFont;pFont->CreatePointFont(90,_T("Arial"));SetFont(pFont);CWnd *pWnd =GetWindow(GW_CHILD);while (pWnd != NULL){pWnd->SetFont(pFont);pWnd= pWnd->GetWindow(G原创 2015-02-06 09:55:00 · 1322 阅读 · 0 评论 -
获取当前系统时间
获取当前系统时间的方法一:CTime time = CTime::GetCurrentTime(); //构造CTime对象 int m_nYear = time.GetYear(); //年 int m_nMonth = time.GetMonth();原创 2015-02-06 10:12:34 · 400 阅读 · 0 评论 -
正常显示,鼠标按下,鼠标弹起,按钮显示不同的图
方法如下:CBitmapButton::LoadBitmaps(IDB_UP, IDB_DOWN,IDB_FOCUSED); 备注:按钮的Style必须指定为BS_OWNERDRAW。原创 2015-02-06 20:13:21 · 998 阅读 · 0 评论 -
SetTimer函数
什么时候我们需要用到SetTimer函数呢?当你需要每个一段时间执行一件事的的时候就需要使用SetTimer函数 了。使用定时器的方法比较简单,通常告诉WINDOWS一个时间间隔,然后WINDOWS以此时间间隔周期性触发程序。通常有两种方法来实现:发送WM_TIMER消息和调用应用程序定义的回调函数。 1.1 用WM_TIMER来设置定时器 先请看SetTimer这个AP转载 2015-02-09 16:24:45 · 7640 阅读 · 1 评论 -
为对话框添加背景图片
方法如下:1先把BMP图片添加到资源视图中;2在LoginDlg.h下声明一个CBitmap m_bitmap;3在LoginDlg.cpp的OnInitDialog()中:m_bitmap.LoadBitmap(IDB_BITMAP1);4定位到OnPaint()函数的else中,写上:BITMAP bm; CRect rect; CDC d原创 2015-02-06 10:01:55 · 555 阅读 · 0 评论 -
MFC如何使控件大小随着对话框大小自动调整
对话框的大小变化后,假若对话框上的控件大小不变化,看起来会比较难看。下面就介绍怎么让对话框上的控件随着对话框的大小的变化自动调整。首先明确的是Windows有一个WM_SIZE消息响应函数,这个函数在对话框大小发生变化的时候调用,所以我们可以记录下原来对话框的大小,还有当前对话框的大小(这个不用自己算,系统已给出),然后根据控件做出相应比例的调整。比如原来对话框大小为a转载 2015-02-06 16:01:47 · 440 阅读 · 0 评论 -
给列表框添加背景颜色和字体颜色的方法
m_list_task.SetBkColor(RGB(444,233, 255));m_list_task.SetTextColor(RGB(0,0, 255));原创 2015-02-06 10:36:22 · 845 阅读 · 0 评论 -
创建圆角按钮
方案:重写虚函数DrawItem先创一个圆角矩型CreateRoundRectRgn.然后把按钮区域设置在刚建的圆角矩型区域内SetWindowRgn.最后把按钮画出来RoundRect.其中,函数 SetWindowRgn(),可以将绘画和鼠标消息限定在窗口的一个指定的区域,可以是CreateRectRgn(),CreatePolyRgn(),CreatePolygonR转载 2015-02-06 15:42:21 · 638 阅读 · 0 评论 -
动态设置对话框大小
对话框大小的设置方法一: CRect temprect(x, y, length, width); // (x,y)对话框左上角的坐标 CWnd::SetWindowPos(NULL,0,0,temprect.Width(),temprect.Height(),SWP_NOZORDER|SWP_NOMOVE);方法二:原创 2015-02-06 10:25:24 · 464 阅读 · 0 评论 -
给按钮控件贴图的方法
1先把BMP图片添加到资源视图中;2在LoginDlg.cpp的OnInitDialog()中添加如下代码:Cbutton m_button.SetBitmap(LoadBitmap(AfxGetInstanceHandle(), MAKEINTRESOURCE(ID))); 注意:按钮创建时必须包含BS_BITMAP属性。此方法只适用于为按钮贴图。原创 2015-02-06 10:40:39 · 531 阅读 · 0 评论 -
对话框的移动
使生成的对话框能够拖拉移动的方法:1在Dlg.h文件中添加鼠标左键点击消息响应函数 afx_msg voidOnLButtonDown(UINT nFlags, CPoint point);2在Dlg.cpp文件中添加消息映射ON_WM_LBUTTONDOWN()3在Dlg.cpp文件中添加消息函数内容:voidCDlg::OnLButtonDown(UI原创 2015-02-06 10:42:06 · 1311 阅读 · 0 评论 -
控件处鼠标变型
设置鼠标在对话框某个区域的响应,可以添加WM_MouseMove消息响应,并在OnMouseMove()函数中实现操作。 但是,控件其实也是一个对话框。所以,如果要设置鼠标在控件所在范围内的事件,用WM_MouseMove是行不通的。 解决方法:重载OnSetCursor()方法。 步骤:1.打开对应对话框的类向导ClassWizard。原创 2015-02-06 10:43:21 · 475 阅读 · 0 评论 -
鼠标移动到控件上显示提示信息
实现方法:1.头文件中创建对象CToolTipCtrl m_Mytip ;2.在OnInitDialog()中添加如下代码:m_Mytip.Create(this);m_Mytip.AddTool(GetDlgItem(ID),_T ("提示信息")); //ID为你要添加提示信息的控件的ID。m_Mytip.SetDelayTime(200);//设置延迟m_Myt原创 2015-02-06 10:44:06 · 3801 阅读 · 0 评论 -
圆形对话框的设置
方法如下:在OninitDialog中添加如下代码:CRgn rgn;CRectrect;GetClientRect(rect);rgn.CreateEllipticRgn(rect.left,rect.top, rect.right, rect.bottom);SetWindowRgn(rgn,true);原创 2015-02-06 15:43:17 · 596 阅读 · 0 评论 -
圆角按钮
2013-05-24 12:45 1197人阅读 评论(0) 收藏 举报[cpp] view plaincopyprint? 第一步:往项目中添加MyButton.h 和MyButton.cpp 两个文件。第二步:然后将自己需要的BitMap文件导入。第三步:在项目工程的CARMDlg::OnInit转载 2015-02-06 15:46:27 · 482 阅读 · 0 评论 -
Base64加密算法的C++代码实现
base64加密规则如下:Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3。具体实现方法:第一个字节,根据源字节的第一个字节处理。规则:源第一字节右移两位,去掉低2位,高2位补零。既:00 + 高6位第二原创 2015-04-07 09:06:56 · 5039 阅读 · 2 评论