
MFC学习总结
尽管叫我疯子
这个作者很懒,什么都没留下…
展开
-
MFC积累整理
文章目录一、定时器Timer1.MFC方式(a)创建方法:(b)使用方法:2.Windows API方式3.区别总结一、定时器Timer1.MFC方式(a)创建方法:资源视图->类向导->消息->WM_TIMER->添加处理程序,即可自动生成相应的函数xx.h 中自动生成:afx_msg void OnTimer(UINT_PTR nIDEvent);xx.c...原创 2020-02-04 17:02:55 · 289 阅读 · 0 评论 -
【待归纳】关于MFC combobox下拉框 下拉选择后立即获取控件值的事件处理
需求:下拉框点击某个值后自动根据这个值的内容触发操作问题:常规的使用onSelectChange事件和m_combo.GetWindowText()并不能获取到选中时候的值,如果第一次选择某一项往往获取的值为空或者默认值解决办法:下拉框选择后值更新的比较慢,但是索引值是更新了的,所以需要使用combo的GetLBText方法,通过索引值去获取选中的值void GetLBText( in...原创 2019-04-08 11:53:43 · 4003 阅读 · 0 评论 -
【MFC】CString类型中文字符串截取出现乱码的问题/实现中文字符串截取无乱码的方法
原贴地址我的方法与他类似,先将cstring转成宽字节后再截取字符串方法原理:cstring下默认字符字母数字等占一个字节,而中文占两个字节,转换成宽字节后每个单字节后面会自动填充一个0x00 ,就能和中文一样保持双字节,截取时保证取得个数为偶数就可以了代码示例:实现自动换行的功能 strText = consPos;(cstring类型) if...原创 2018-10-08 11:53:55 · 2853 阅读 · 0 评论 -
【MFC】MFC下访问access数据库的几种方式
ODCB的方式:#include <AFXDB.H>void CMy032901Dlg::OnButton5(){CDatabase m_db;CRecordset rs(&m_db);CString strFile = GetCurrentPath()+"\\testdb.mdb";CFileFind fFind;BOOL bSuccess =...原创 2018-09-20 17:03:00 · 3861 阅读 · 0 评论 -
【MFC】MFC插入背景图片(自绘的方式)
void XYLogin::OnPaint(){ if (IsIconic())//最小化消息 { CPaintDC dc(this); // device context for painting // TODO: 在此处添加消息处理程序代码 // 不为绘图消息调用 CDialogEx::OnPaint() SendMessage(WM_...原创 2018-09-19 14:06:31 · 537 阅读 · 0 评论 -
【MFC】MFC下如何设置控件的字体样式,窗口背景和控件底色透明
重写OnPaint方法(WM_PAINT)和OnCtlColor的方法(WM_CTLCOLOR)void CPannelRecentUsed::OnPaint(){ CPaintDC dc(this); // device context for painting // TODO: 在此处添加消息处理程序代码 // 不为绘图消息调用 CDialogE...原创 2018-09-19 09:52:43 · 476 阅读 · 0 评论 -
【MFC】MFC打印提示命令失败的解决办法
在.rc文件中补全include"l.chs\afxprint.rc",具体实现传送门之后会将创建和绘制打印窗格的方法和代码贴出来给大家分享转载 2018-09-13 15:31:35 · 527 阅读 · 0 评论 -
【MFC】关于ListControl的一些使用总结
场景一:常规的Report风格的List如果需要勾选上必须得直接点击方框,为了简化操作,可以重写list点击事件函数,只需要点击该行任意位置就可以给打钩或者取消打钩void CPannelRecentUsed::OnClickListPieceinfo(NMHDR *pNMHDR, LRESULT *pResult){ LPNMITEMACTIVATE pNMItemActivate...原创 2018-09-18 17:13:14 · 444 阅读 · 0 评论 -
【MFC】MFC 中list control删除未勾选项
List Control(m_list_piece)int count = 0;for (int nCol = 0; nCol < m_list_piece.GetItemCount() + 1; nCol++){ if (!m_list_piece.GetCheck(nCol - count)) { m_list_piece.DeleteItem(nCol - count...原创 2018-09-18 16:58:37 · 371 阅读 · 0 评论 -
【MFC】关于mfc中控件禁用和状态判断
启用和禁用控件可以调用CWnd::EnableWindow 函数。BOOL EnableWindow(BOOL bEnable = TRUE);判断控件是否可用可以调用 CWnd::IsWindowEnable函数BOOL IsWindowEnable();IsWindowEnabled函数用于判断指定的窗口是否允许接受键盘或鼠标输入。 函数原型:BOOLIsWindow...原创 2018-09-18 15:02:10 · 3024 阅读 · 0 评论 -
【MFC】MFC 指定菜单的某一栏不可用
UINT EnableMenuItem( UINT nIDEnableItem, UINTnEnable );返回值:返回以前的状态(MF_DISABLED, MF_ENABLED,或MF_GRAYED),如果无效,则返回-1。参数:nIDEnableItem 指定由nEnable决定的将要有效的菜单项。该参数既可以指定弹出菜单项,也可以指定标准菜单项。nEnable ...原创 2018-09-10 16:23:37 · 2267 阅读 · 0 评论 -
【MFC】MFC下创建基于对话框的状态栏
常规方法:1..h文件中添加成员变量CStatusBar m_wndStatusBar;2.在OnInitDialog()中加入: static UINT indicators[] = { ID_SEPARATOR,...原创 2018-09-11 23:03:51 · 874 阅读 · 0 评论 -
【MFC】MFC中SQLite使用经验总结
关于事务int result;char *zErrMsg = 0;result = sqlite3_exec(db,"begin transcation",0,0,&zErrorMsg); //开启一个事务result = sqlite3_exec(db,"commit transaction",0,0,&zErrorMsg); //提交事务resul...原创 2018-07-17 11:32:24 · 2355 阅读 · 0 评论