MFC探索

soliddream66 2015-04-08 10:55:50
加精
项目介绍
http://blog.csdn.net/soliddream66/article/category/3058783

项目源代码下载
https://github.com/soliddream/MFCExploreGitHub

欢迎交流.

散下分.
...全文
3424 97 打赏 收藏 转发到动态 举报
写回复
用AI写文章
97 条回复
切换为时间正序
请发表友善的回复…
发表回复
王考拉 2015-12-16
  • 打赏
  • 举报
回复
刚学MFC小白一只,前来学习
蓝色枫叶 2015-07-27
  • 打赏
  • 举报
回复
MFC感觉上可以做一些不是特别复杂的桌面应用,而且不是很讲究界面的那种。MFC界面美化是个难题。
剑开天门 2015-05-13
  • 打赏
  • 举报
回复
接分了,楼主好人,谢谢分享
mfmfmmf1 2015-04-24
  • 打赏
  • 举报
回复
我就是拿 MFC入门的
ningbinzhang 2015-04-24
  • 打赏
  • 举报
回复
C++ ,界面不用MFC用什么
xusir98 2015-04-22
  • 打赏
  • 举报
回复
Evan_Cao 2015-04-21
  • 打赏
  • 举报
回复
xiexie 分享
dujiakehu 2015-04-20
  • 打赏
  • 举报
回复
这么好看的界面MFC是怎么办到的。。
qyl_qiyalu 2015-04-20
  • 打赏
  • 举报
回复
谢谢楼主,学习了
consurfer1401 2015-04-20
  • 打赏
  • 举报
回复
谢谢分享,很受用
羽毛乱发 2015-04-20
  • 打赏
  • 举报
回复
一直在用,持续在用,没法子,JAVA学不会
dujiakehu 2015-04-20
  • 打赏
  • 举报
回复
MFC做出来的界面有那么好看吗。。。
fier1 2015-04-18
  • 打赏
  • 举报
回复
引用 81 楼 lx624909677 的回复:
对于开发者来说确实是方便了不少,但是效率上和MFC完全没得比吧

运行下就知道了,界面效率还没有太明显的差别,主要现在电脑也都速度很快了,再说了效率要求高的地方可以调用C,C++组件(例如sqlite),当然每种技术都有其优势,如果是office这样的界面那肯定是MFC好,但如果是一些小软件用MFC就有点杀鸡用牛刀了,举个例子:斌哥用AAuto做的一个开源的豆瓣FM客户端,作者从开始学习AAuto到作品开发完成仅一个月,界面贴图算是比较多的了,但是运行起来效率还是可以的。






lx624909677 2015-04-18
  • 打赏
  • 举报
回复
引用 28 楼 u012475265 的回复:
MFC有时候还真是把简单的事搞复杂了,桌面小软件用AAuto搞搞速度很快,还可以很方便的嵌入网页,调用js,python这些混合开发。例如创建个选项卡界面,菜单,列表框,数据库,以及界面自适应调整......等等,用aauto就是几句代码完成、几分钟的事情。
import win.ui;
/*DSG{{*/
var winform = win.form(text="小工具";right=744;bottom=507)
winform.add(
button={cls="button";text="确定";left=214;top=466;right=340;bottom=502;db=1;dr=1;z=2};
button2={cls="button";text="取消";left=346;top=466;right=472;bottom=502;db=1;dr=1;z=3};
button3={cls="button";text="帮助";left=478;top=466;right=604;bottom=502;db=1;dr=1;z=4};
button4={cls="button";text="应用";left=610;top=466;right=736;bottom=502;db=1;dr=1;z=5};
tab={cls="tab";left=5;top=5;right=740;bottom=451;db=1;dl=1;dr=1;dt=1;edge=1;z=1}
)
/*}}*/

import win.ui.menu;
var menu = win.ui.menu(winform); 
menu.addTable( {
    { "电话"; {
            { "子菜单";
                function(id){
                    winform.msgbox("子菜单")
                } 
            }; 
        } 
    };
    { "订单"; {
            { "子菜单";
                function(id){
                    winform.msgbox("子菜单")
                } 
            }; 
        } 
    }
    { "联系人"; {
            { "子菜单";
                function(id){
                    winform.msgbox("子菜单")
                } 
            }; 
        } 
    }
} )

var frmPage1 = winform.tab.add( text="第一页"; bottom=249;right=349 )
frmPage1.add( 
    listview={cls="listview";left=152;top=4;right=345;bottom=243;border=1;db=1;dr=1;dt=1;fullRow=1;gridLines=1;msel=false;z=1}
) 
frmPage1.listview.insertColumn("姓名",90,,0x0/*_LVCFMT_LEFT*/) 
frmPage1.listview.insertColumn("电话",100,,0x0/*_LVCFMT_LEFT*/) 

import sqlite;
var sqlConnection = sqlite("/phone.db") 

if( ! sqlConnection.existsTable("member") ){
    sqlConnection.exec( "CREATE TABLE member(name,phone);" )   
    var cmd = sqlConnection.prepare("INSERT INTO member VALUES (@name,@phone);" );
    cmd.step(
        name = "张三";
        phone = "802"; 
    ) 
    cmd.step(
        name = "李四";
        phone = "801"; 
    ) 
}
 
for name,phone in sqlConnection.each("SELECT * FROM member") {
   frmPage1.listview.addItem( { 
        text={name;phone} 
   } )
}

var frmPage2 = winform.tab.add(  text="第二页";bottom=140;right=325  ) 

winform.show(true) 
win.loopMessage();
对于开发者来说确实是方便了不少,但是效率上和MFC完全没得比吧
新手村大爷 2015-04-18
  • 打赏
  • 举报
回复
在用WIN32的飘过。。。
sstower 2015-04-17
  • 打赏
  • 举报
回复
还在使用MFC的飘过
赵4老师 2015-04-17
  • 打赏
  • 举报
回复
学习Codejock.Xtreme.Suite.Pro.ActiveX源代码。
大树学长 2015-04-17
  • 打赏
  • 举报
回复
看到列表框我就来了,最近在做自绘控件。借鉴一下
天台的故事 2015-04-17
  • 打赏
  • 举报
回复
先在这里简单的介绍下你的项目啊,勾起点大家的兴趣?
寒沙胜雪 2015-04-17
  • 打赏
  • 举报
回复
引用 63 楼 jason_wentzel 的回复:
很多人说MFC过时,或是只适合做后台什么的,在我看来,任何一种开发语言,只要你真正了解了,那只不过成为你的一种工具而已,没有什么开发不出来的,只有你想不到的,没有做不到的,就看你到底掌握了几分。 c++做底层的绝对王者地位,无人能撼动,这是无可厚非的,至于做界面,那就得看你平时的积累,MFC做界面也并不是很多朋友说的那么难,其实MFC也可以做出漂亮的界面来,MFC的界面库也很多,用了好的界面库,同样你也可以开发出友好的界面来。个人认为,界面固然重要,但没必要太花哨,物极必反,界面只要还过得去,客户认可就行,一个软件最重要的还是它的稳定性,可靠性,用户良好的体验。其实VC6也可以开发出友好的界面,我空间里的东西都是vc6开发出来的,个人认为也不算太丑,哈哈...
求私信 QQ
加载更多回复(71)
这是一本填补“使用向导”类的VisualC++书籍、产品文档以及MFC源代码之间空隙的MFC书籍。本书是了解MFC内幕的向导,提供了关于那些没有文档记录的MFC类、实用函数和数据成员的独一无二并且透彻的信息,介绍了有用的编码技巧,并对MFC各个类之间的协作方式进行了重要的分析。 本书的第一部分包含了核心的MFC图形用户界面类以及支持它们的类,第二部分包含了像OLE这种扩展基本Windows支持的主题。如果做到以下几点,你就可以成为一位透彻理解MFC实现细节的专家:探索MFC文档/视图结构的内幕,从而学习视图同步、打印和打印预览;更深入地了解MFC序列化中那些没有文档记录的方面和一些没有文档记录的类,例如CPreview、CPreviewDC、CMirrorFile以及CDockBar等等;最后理解MFC 和OLE是如何共同运作的,以及OLE控悠扬是如何实现的;积累技巧,学会自己研究和理解MFC源代码。 目录: 前言 致谢 简介 第1章 MFC的概念性总括 面向对象编程的一些背景 面向对象编程术语 通常的对象 对象与C++ 为什么使用OOP 应用程序框架与MFC MFC要点之旅 结语 第2章 基本的Windows支持 MFC与C/SDK 基本的MFC应用程序组件 现在,找到WinMain() 一些其他隐藏的信息 MFC对GDI的支持 结语 第3章 MFC中的消息处理 CCmdTarget和消息映射表 窗口消息 MFC消息映射内幕 MFC如何使用消息映射表 进入消息循环:PreTranslateMessage() 结语 第4章 MFC实用类 简单值类型 MFC的集合类 CFile家族:MFC对文件的访问 CExcephon:提供更好的错误处理 结语 第5章 CObject 使用CObject的代价 CObject的特性 宏的介绍 运行时类的信息 MFC中的持续性 CObject对诊断的支持 CObject的诊断支持内幕 组合在一起 投入使用 是否值得 结语 第6章 MFC对话框和控件类 CDialog:模态MFC对话框和非模态MFC对话框 MFC公用对话框 OLE对话框 属性页(也称带标签的对话框) MFC控件类 结语 第7章 MFC的文档/视图结构 为什么要用文档/视图 其他原因 旧的方法 体系结构 文档/视图结构内幕 文档舰图内幕再览 结语 第8章 高级文档舰图结构内幕 CMirrorFile CView打印 CView对打印预览支持的内幕 CView的派生类:CScrollView CView的另一个派生类:CCtrlView 结语 第9章 MFC的增强型用户界面类 CSplitterWnd:MFC分割窗口 MFC的CControlBar体系结构 CMiniFrameWnd MFC的MRU文件链表实现 结语 第10章 MFC的DLL与线程 理解状态 MFC的DLL MFC线程 结语 下一章 第11章 用MFC实现COM MFC和OLE COM 何为COM类 COM接口 GUID 剖析IUnknown接口 COM对象服务器 拥有多个接口的COM类 MFCCOM类 使用MFC创建CoMath MFCCOM和接口映射宏 使用MFC的CoMath类 完成服务器的设计 MFC对类厂的支持 结语 第12章 统一数据传输和MFC 历史回顾 重要的结构 IDataObject接口 OLE剪贴板 MFC的IDataObjeot类 延迟供应 深入了解MFC的IDataObject类 OLE拖放 结语 第13章 使用MFC实现OLE文档 OLE文档101 MFC对OLE文档的支持 使用MFC实现OLE文档服务器 容器朋艮务器的协调工作 使条目无效 保存容器的文档 装载OLE文档 结语 第14章 MFC与自动化 自动化的历史 自动化的功能 使用MFC实现自动化应用程序 自动化的工作机制 COM接口与自动化 实现自动化的另外一种方法:使用类型信息 MFC与自动化 结语:使用“MFC方式”的结果 第15章OLE控件 VBX及其缺陷 OLE控件 写一个OLE控件 在工程里使用OLE控件 它是如何工作的 MFC和OLE控件的容器 OLE控件的生存周期 OLE连接 OLE控件的事件 MFC如何处理事件 技巧:在一个视图中加入一个事件接收器 OLE控件的属性页 结语 附录A MFC源代码导读 MFC编码技术 探索MFC的工具 MFC源代码指南 愉快的旅途 附录B 本书的示例代码 术语表

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧