PCman 板


LINE

这段时间把C++基础书再整本过了一遍,几年前看过了一次4e, 还记得当时有大大推荐5e,所以这次过了5e 相关章节例如各种容器、迭代器iterator、内建演算法、 class和OOP相关(public protected virtual destructor 继承多型重载)、 Lambda、智慧指标、template等 就花了相当非常多的时间,只算初步阅读一遍,只有看还没实际做, 接着找寻MFC有没有什麽比较深入的教学或书,网路搜寻有几篇基本的, 书查了一下感觉不算多,後来找到了一本感觉相对比教深入完整的和看起来有范例档的, 是这本 MFC Windows 程序设计, 2/e MFC Windows程序设计(第2版)(修订版)(附盘) https://www.tenlong.com.tw/products/9787302150428?list_name=srh 翻了前面几页之後,就知道又有大量的用法和变数名称要记, 算是相当非常大量,还有一堆大写变数, 例如DrawText格式设定传入的写法风格是 DT_SINGLELINE|DT_CENTER|DT_VCENTER 要继续的话又是一条更长更花时间的路 我目前会先到这边暂停, 之後不确定何时开始继续学习有新的进度的话再来分享一下, 如有遇到问题再来请教专案贡献开发的大大 回到这本书, 这本是循序渐进的教,对学习很有帮助, 推测学了一定的量之後,回来看PCMan专案, 应该会离能够开发专案所需的能力门槛又更近一点 再次感谢之前PCMan专案建置issue很多人的帮忙, 另外也分享一下几年前请教一位ibb大大得到的宝贵建议: --- 当你找不到进入点时 记得试试看MainFrm.cpp --- 以下纪录初步查看MFC和专案的一点点个人笔记: --------------------------------------------- MFC中afx_msg是什么,是什么数据类型 https://zhidao.baidu.com/question/183102316.html 例如:afx_msg void OnBnClickedButton1(); 其中 afx_msg为消息标志,bai它向系统声 明:有消息映射到函du数实现体;而在map宏定义中,就有具体消息和此函数的映射定义 (可以是自定义,也可以是系统自动完成的) afx是 application framework 如定义一个Edit的Change处理函数: 一、在类的头文件(*.h)中增加 : //{{AFX_MSG(CDialogDemo) afx_msg void OnChangeEdit1(); //{{AFX_MSG 视窗 最根本主要的类 CWinApp CFrameWnd MFC最开始初始化是在 InitInstance(); class CApp : public CWinApp { public: CApp(); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CApp) public: virtual BOOL InitInstance(); virtual int ExitInstance(); https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-gettopwindow GetTopWindow function 12/05/2018 2 minutes to read Examines the Z order of the child windows associated with the specified parent window and retrieves a handle to the child window at the top of the Z order. Syntax C++ Copy HWND GetTopWindow( HWND hWnd ); https://stackoverflow.com/questions/19405196/what-does-a-backslash-in-c-mean What does this code: (especially, what does a backslash '\' ? ) s23_foo += \ s8_foo * s16_bar; As A Line Continuation 再来是 CFrameWnd CWinApp的InitInstance 会 new 一个 继承 CFramwWnd的类当作视窗 然後 pFrame->UpdateWindow(); 绘制窗口 https://blog.csdn.net/CNHK1225/article/details/45097281 _T("")是一个宏,定义于tchar.h下。 #define __T(x) L ## x #define _T(x) __T(x) -------------------------------------------------------------- _T("Hello")是一个宏,他的作用是让你的程序支持Unicode编码,因为Windows使用两种字 符集ANSI和UNICODE,前者就是通常使用的单字节方式,但这种方式处理象中文这样的双 字节字符不方便,容易出现半个汉字的情况。而后者是双字节方式,方便处理双字节字符 。 Windows NT的所有与字符有关的函数都提供两种方式的版本,而Windows 9x只支持ANSI方 式。 如果你编译一个程序为ANSI方式,_T实际不起任何作用。而如果编译一个程序为UNICODE 方式,则编译器会把"Hello"字符串以UNICODE方式保存。 _T和_L的区别在于,_L不管你是以什么方式编译,一律以UNICODE方式保存 这边这个方法里的注解 有中文比较好看的懂 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { // DPI scaler.Update(this); HDC hdc = GetDC()->m_hDC; UINT dpiy = GetDeviceCaps(hdc, LOGPIXELSY); // 用来建造control的temp Rect CRect tmprc(0, 0, 0, 0); // Load PCMan Icon icon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); SetIcon(icon, TRUE); SetIcon(icon, FALSE); CBitmap imglist_bmp; // Load Image List for Site List and Tab... imglist_bmp.Attach((HBITMAP)LoadImage(AfxGetInstanceHandle(), ConfigPath + ICON_BMP_FILENAME, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE)); img_icons.Create(16, 16, ILC_COLOR32 | ILC_MASK, 9, 0); ImageList_AddMasked(img_icons.m_hImageList, (HBITMAP)imglist_bmp.m_hObject, RGB(255, 0, 255)); // Create font for UI LOGFONT lf; ...... 建立新连线的时候 开新页签 会执行 void CMainFrame::UpdateUI() 找到一个可以中断点停住的地方 MainFrm.cpp的确是一个很好的开始点 有很多看起来跟操作直接相关的程式码 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.136.213.138 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PCman/M.1594563527.A.6DC.html ※ 编辑: name2name2 (114.136.213.138 台湾), 07/12/2020 22:29:12







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP