摘要:
MFC MDI框架,CRichEditView 作为视图,显示和编辑带格式的文本。 文本的存储,是将RTF格式的字符串存入 SQLite 数据库,数据表的BLOB字段。 对于每个视图,保存对应的树节点,关联到SQLite中对应的记录。 树节点也保存视图的指针,避免重复创建视图。 封装的SQLite 阅读全文
摘要:
MFC CTreeCtrl 树节点是在插入时确定位置,用hParent, hInsertAfter 这两个HTREEITEM 可以唯一确定节点位置。 这样增,减,移动节点后,只有两个数据变化,涉及的其他节点数据的变化也很少,比较适合存储。随机存储的节点只要有两个相关节点数据就能还原出树。 实际还原很 阅读全文
摘要:
折腾了好久,终于可以在文件树中把对应的子窗口激活了。 需要给主框架的MDI客户窗口发WM_MDIACTIVATE消息,消息的中的窗口句柄不是视的句柄,而应该是子窗口框架的句柄。 在Doc文件中把新建文档对应的视的窗口句柄保存到FileView的树节点中。 BOOL CREDTDoc::OnNewDo 阅读全文
摘要:
MFC 多文档-视图的 数据结构: 1.CWinApp 的成员变量 CDocManager* m_pDocManager 管理模板2.CDocManager 的成员变量 CPtrList m_templateList 维护结构模板 CMultiDocTemplate new的对象指针3.CDocMu 阅读全文
摘要:
用一个示波器的BMP图做背景,在上面画出麦克风采集到的数据. 只是数据看起好奇怪。似乎只有密度变化,没有幅度变化。 升级到VS2022了,字符串处理又有些不同了。似乎更严格了。 程序 Wave.cpp // WAVE.cpp : Defines the entry point for the app 阅读全文
摘要:
把Tab控件做成一个MDI框架的边窗面板,支持一条边的虚移动。 坐标的转换比较烦,搞得头都大了。 运行效果如图。 主要程序: XTabPane.h #pragma once #include "xwnd.h" #define XTABPANE_ISIDE_TOP 0x01 #define XTABP 阅读全文
摘要:
浏览器首页总是被篡改,用一个简单的方法规避。 在桌面上创建一个HTML文件替代浏览器图标,每次上网时双击这个文件即可,秒开。 效果如下图: 文件内容: STA.HTML <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>€ 阅读全文
摘要:
1.利用TreeView和Header控件配合,对TreeView进行部分重绘,做成一个可以展开的表结构。 2.重绘要注意先后顺序。 效果如图。 程序如下: HeaderTest.cpp // HeaderTest.cpp : Defines the entry point for the appl 阅读全文
摘要:
1.下载安装 npcap-1.60.exe 2. 下载 npcap-sdk-1.12 3. VC++ 工程设置中,加入头文件和lib文件的路径。 方便起见,字符集选Multi-Byte 4. 把SDK中的例程序复制粘贴变成自己的测试程序。 程序界面如下: 程序如下:抓包的程序段放在一个线程中,避免阻 阅读全文
摘要:
原来边窗style用了WS_THICKFRAME类型直接更改尺寸,有两个问题: 1.窗口大小连续更改,导致整个界面上的子窗口都连续调整大小和刷新,界面闪烁。 2.边窗另外的几条非移动边也可以拉动。 改为鼠标事件中对框架窗口局部区域的保存和绘制,移动过程中不造成界面重排,鼠标键抬起消息中结束,并将位置 阅读全文