![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
VC++
文章平均质量分 50
dege169
这个作者很懒,什么都没留下…
展开
-
MFC自绘制按钮
MFC自绘制按钮软件开发2010-04-28 15:57:29阅读373评论0 字号:大中小 订阅如果你希望能够在自己的程序中表现出新意,那么你一定不会仅仅满足于MFC提供那些标准控件。这时,我们就必须自己另外多做些工作了。就改变控件外观这一 点来说,主要是利用控件的自绘功能(Owner Draw)实现的。本篇将和各位一起定义一个XP风格的CXPButton按钮类,目的不在于介绍CXPButton类的使用技巧,而在于向各位阐述实现 自绘按钮的方法。当然如果你觉得CXPButton有用的话,也可以把它的源文转载 2011-02-26 17:42:00 · 4257 阅读 · 0 评论 -
(转)目录监视程序
http://www.77169.com/classical/HTML/36116.html转载 2011-11-10 16:15:54 · 231 阅读 · 0 评论 -
用mysql的ODBC数据源遇到的乱码问题
在VC6做数据库连接的时候没考虑到中文乱码问题,导致用Mysql(我用的编码为UTF8)可视化管理工具查询出来的,凡是中文的都是乱码,并且在程序中,存在直接按中文条件查询的时候查不到数据,后来经网上查找资料,把数据源的编码改成GB2312就可以了。如图: 选择自己的数据源, 点配置: 它会弹出(Mysql图形管理工具的)数据源配置属性页: 配置原创 2011-11-21 18:57:34 · 896 阅读 · 2 评论 -
如何让组合框显示内容
如图,将组合框的高度拉高一点。按一下那个倒三角的箭头,就可以往下拉。原创 2011-11-20 15:54:01 · 1023 阅读 · 0 评论 -
VC连接mysql遇到的问题
今天用MFC连接mysql数据库,发现老是连接不上,把代码贴在控制台程序下运行,又可以运行,很奇怪。后来我把异常打印出来:Client does not support authentication protocol requested by se原创 2011-09-29 18:04:48 · 773 阅读 · 0 评论 -
MFC透明化图像的一些心得
依据msdn,BitBlt转彩色为单色时的规则由彩图的背景色来定。具体为:彩色图中与彩图背景色一致的部分被设定为白色,其他不一致的部分为黑色。依据msdn,BitBlt中,单色转彩色的规则由彩图背景、前景来定。具体为:单色图中白色部分被涂上背景色,黑色部分被涂上前景色。原创 2011-09-25 16:27:45 · 765 阅读 · 0 评论 -
C中的可变参数
要利用C语言的可变参数,我们必须首先导入stdarg.h文件,其中定义了 typedef char * va_list; #define _INTSIZEOF(n) / ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) ) #define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) ) #define va_arg(ap,t) / ( *(t *)((ap += _INTSIZEOF(t)原创 2011-02-20 17:47:00 · 256 阅读 · 0 评论 -
MFC的ODBC实验
首先要配置好ODBC数据源,建的用户类一般继承自对话框类,再自己建一个自己的记录集类,它继承自CRecordSet类,过程中回自动要求你选择你需要用到的数据库中的表,利用它的Open()函数可以打开相应的表,然后增删改查用到AddNew(), Delete(), Update()等函数。 用到列表控件, 具体用法见下面这段代码 在列表控件中列出记录集:CMyRecordSet rs;rs.Open();int i = 0;m_list.InsertColumn(0, "age",LVCF原创 2011-02-20 00:12:00 · 425 阅读 · 0 评论 -
内存共享
//进程#include#includeint main(int argc, char* argv[]) { HANDLE lhShareMemory; char* lpBuffer = NULL; lhShareMemory = CreateFileMapping(HANDLE(0xFFFFFFFF), NULL, PAGE_READWRITE, 0, 10, "mySharedMemory"); if (NU转载 2011-03-02 21:52:00 · 296 阅读 · 0 评论 -
创建内存映射文件
void main(){ HANDLE hFile=CreateFile( "data.dat", //文件名 GENERIC_READ|GENERIC_WRITE, //对文件进行读写操作 FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, //打开已存在文件 FILE_ATTRIBUTE_NORMAL, 0); //返回值size_high,size_low分别表示文件大小原创 2011-02-28 19:27:00 · 1921 阅读 · 0 评论 -
关于ClistCtrl
typedef struct _LVCOLUMN {UINT mask; //说明此结构中哪些成员是有效的int fmt; //列的对齐方式int cx; //列的初始宽度LPTSTR pszText; //列的标题int cchTextMax; //pszText所指向的缓冲区的大小int iSubItem; //与列关联的子项的索引值,从0开始int iImage; //与列关联的图像列表中指定图像的索引值转载 2011-02-26 20:27:00 · 619 阅读 · 0 评论 -
从磁盘上加载图象
用到函数:HANDLE LoadImage(HINSTANCE hinst, LPCTSTR lpszName, UINT uType, int cxDesired, nt CyDesired, UINT fuLoad ); hinst:处理包含被装载图像模块的特例。若要装载OEM图像,则设此参数值为0。 lpszName:处理图像装载。如果参数hinst为non-NULL ,而且参数fuLoad省略LR_LOADFROMFILE的值时,那么参数lpszName是一个指向保留在hinst模转载 2011-02-26 20:34:00 · 451 阅读 · 0 评论 -
对话框命令更新怎样先于对话框显示菜单项
在消息映射中添加ON_WM_INITMENUPOPUP 项:BEGIN_MESSAGE_MAP(CTestDlg, CDialog) //{{AFX_MSG_MAP(CTestDlg) ........................ ........................ //}}转载 2011-12-18 12:45:44 · 382 阅读 · 0 评论