登录
首页 » VC++源码 » VC++ MDI多文档位图的复制和粘贴功能实现

VC++ MDI多文档位图的复制和粘贴功能实现

于 2022-01-25 发布 文件大小:44.67 kB
0 222
下载积分: 2 下载次数: 1

代码说明:

多文档(MDI):实现在多个文档中位图的复制和粘贴操作,使用说明:打开一个图像,使用“编辑”菜单中的“复制”和“粘贴”对图像进行操作,清除剪切板的内容,拷贝DIB!   CMDICopyBitmapDoc* pDoc = GetDocument();   pDoc->ReplaceHDIB(hNewDIB); // 释放旧的DIB   pDoc->InitDIBData(); // 建立新的调色板及尺寸   pDoc->SetModifiedFlag(TRUE);   SetScrollSizes(MM_TEXT, pDoc->GetDocSize());   OnRealizePal((WPARAM)m_hWnd,0); // 实现新的调色板   pDoc->UpdateAllViews(NULL);

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • VC++ .NET 实现窗口内控件自适应屏幕尺寸大小而变化
    VC++ .NET 实现窗口内控件自适应屏幕尺寸大小而变化,这个具体点就是,窗口中的边框和按钮等元素,会随着窗口的变大自动变大,并保持原有的比例,调用了CSelfResizeWindow::Rectify()来实现,我觉得是个很实用的窗体设计技巧。关于本源代码的几点说明:   自定义类CSelfResizeWindow实现窗口和控件的自适应,根据屏幕尺寸调整大校   使用步骤 :   1. 使需要自适应的窗口类继承于类CSelfResizeWindow,在OnInitDialog()中调用    __super::Init(this, 1, 3000);(其中1和3000是资源ID的范围,在Resource.h    中用宏定义的,Init函数的参数根据情况确定。)   2. 给窗口类添加OnSize()消息响应函数,在OnSize()函数    中调用__super::Rectify();即可。
    2023-01-25 01:40:04下载
    积分:1
  • 兼容64位的VC++ 音乐播放器 带进度条
    这是一个比较早的VC++播放器源码,兼容64位的VC++ 音乐播放器 带进度条和音量控制拖动条,同时还有几个常用的播放控制按钮,暂停、播放、打开文件、快进等,这个播放窗口可以随拖动大小而自动变化。运行效果如上图所示,源代码来自国外网站,注释全是英文英文的。
    2022-01-25 16:55:52下载
    积分:1
  • vc++ 6.0 AddNew添加数据库记录实例
    VC++ 数据库基础编程例子,使用记录集对象的AddNew方法添加记录。   //连接数据库   OnInitADOConn();   //设置查询字符串   _bstr_t bstrSQL = "select * from employees order by 员工编号 desc";   //创建记录集指针对象实例   m_pRecordset.CreateInstance(__uuidof(Recordset));   //打开记录集   m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,    adLockOptimistic,adCmdText);   while(!m_pRecordset->adoEOF)   {    m_Grid.InsertItem(0,"");    m_Grid.SetItemText(0,0,(char*)(_bstr_t)m_pRecordset->GetCollect("员工编号"));    m_Grid.SetItemText(0,1,(char*)(_bstr_t)m_pRecordset->GetCollect("员工姓名"));    m_Grid.SetItemText(0,2,(char*)(_bstr_t)m_pRecordset->GetCollect("所属部门"));    m_Grid.SetItemText(0,3,(char*)(_bstr_t)m_pRecordset->GetCollect("基本工资"));    //将记录集指针移动到下一条记录    m_pRecordset->MoveNext();   }   //断开数据库连接   ExitConnect();
    2022-03-10 00:07:57下载
    积分:1
  • VC++ 6.0创建带有文本指示的自定义进度条
    VC++ 6.0创建带有文本指示的自定义进度条,自己创建的带有文本的进度条:,   GetClientRect(&rectClient);//获取进度条窗口   CBrush brush;   brush.CreateSolidBrush(::GetSysColor(COLOR_3DFACE));//获取系统画刷   dc.FillRect(&rectClient, &brush);//填充进度条窗口   VERIFY(brush.DeleteObject());//删除画刷   if (m_nCurrentPosition m_nUpper)//进度条没有运行   {    return;   }   brush.CreateSolidBrush(RGB(0, 0,255));//创建蓝色画刷   RECT rectFill;//定义填充区域   float fillwidh=(float)((float)(m_nCurrentPosition-m_nLower)/(float)(m_nUpper-m_nLower))*rectClient.right;   ::SetRect(&rectFill,    0,// 左上X坐标    0,//左上Y坐标    (int)fillwidh,//右下X坐标    rectClient.bottom+1);//右下Y坐标   dc.FillRect(&rectFill,&brush);//填充进度条区域   VERIFY(brush.DeleteObject());   CString percent;   percent.Format("已完成:%.0f%%", 100.0*(float)(m_nCurrentPosition-m_nLower)/(float)(m_nUpper-m_nLower));   dc.SetTextColor(RGB(255,0,0));//设置文本颜色   dc.SetBkMode(TRANSPARENT);//透明背景   dc.DrawText(percent, &rectClient, DT_VCENTER|DT_CENTER|DT_SINGLELINE);//显示文本信息
    2023-06-16 21:25:02下载
    积分:1
  • VC++ 音乐播放器
    VC++ 音乐播放器 例子,支持播放列表 ,支持常规的播放控制,自制了界面,从这个播放器软件中,你可以学习到软件界面方面的编写技巧以及音乐播放方面的技巧,运行效果如下图所示。本源码对学习VC++软件编程有很好的借鉴作用。
    2022-05-20 10:54:09下载
    积分:1
  • VC 6.0 在程序中使用Calendar月历控件
    VC 6.0 在程序中使用月历控件,其实和日历插件差不多,核心是调用Windows系统的Calendar,做了些功能的自定义。   实现月历控件的部分设置代码:   m_MonthCalCtrl.SetColor(MCSC_TITLETEXT,RGB(0,128,128));//设置标题条上的文本颜色   m_MonthCalCtrl.SetColor(MCSC_TITLEBK,RGB(178,178,0));//设置标题条背景颜色   m_MonthCalCtrl.SetFirstDayOfWeek(0);//设置星期一为一周的开始   //设置日期   void CCalendarDlg::OnSetToday()   {    //更新变量    UpdateData(TRUE);    //构造日期变量    CTime tm(m_nYear,m_nMonth,m_nDay,0,0,0);    m_MonthCalCtrl.SetCurSel(tm);//设置当前日期   }
    2023-08-04 01:15:03下载
    积分:1
  • 3个VC++ win注册表编程操作实例
    本源码中有三个VC++操作表的相关例子,每一个都属于比较简单那种,展示注册表的操作技巧,有兴趣的下载源码包。   HKEY hKEY; //定义有关的 hKEY, 在查询结束时要关闭。   LPCTSTR data_Set="SoftwareMicrosoftWindowsCurrentVersion"; //子键目标   //打开与路径 data_Set 相关的 hKEY,第一个参数为根键名称,第二个参数表。   //表示要访问的键的位置,第三个参数必须为0,KEY_READ表示以查询的方式。   //访问注册表,hKEY则保存此函数所打开的键的句柄。   long retopen=(::RegOpenKeyEx(HKEY_LOCAL_MACHINE,data_Set, 0, KEY_READ, &hKEY));   if(retopen!=ERROR_SUCCESS) //如果无法打开hKEY,则终止程序的执行   {    MessageBox("错误: 无法打开有关的hKEY!");    return;   }   //查询有关的数据 (系统用户姓名 owner_Get)。   LPBYTE owner_Get=new BYTE[80];   DWORD type_1=REG_SZ ;   DWORD cbData_1=80;   //hKEY为刚才RegOpenKeyEx()函数所打开的键的句柄,"RegisteredOwner"。   //表示要查 询的键值名,type_1表示查询数据的类型,owner_Get保存所。   //查询的数据,cbData_1表示预设置的数据长度。   //与RegQureyValueEx()类似,hKEY表示已打开的键的句柄,"RegisteredOwner"   //表示要访问的键值名,owner_Set表示新的键值,type_1和cbData_1表示新值。   //的数据类型和数据长度   UpdateData(true);//获得编辑框数据   if(m_Adduser.IsEmpty()||m_Addpassword.IsEmpty())//用户名、密码不能为空   {    AfxMessageBox("输入用户名、密码不能为空!");    return;   }
    2022-02-22 09:55:12下载
    积分:1
  • VC++ ChatRoom聊天室(客户端+服务端)
    VC++ 聊天室(客户端+服务端),CS架构的ChatRoom聊天源码,服务端用来创建公共的聊天服务,比如创建用户列表、显示聊天消息、监控用户数量和在线人数;客户端是提供给用户使用的真正聊天程序,可完成大部分的聊天操作,比如发送聊天内容、选择私聊对象、查看聊天黑名单、设置加密传输消息、设置加密密钥、密文、选择发送表情、自定义昵称等功能。聊天窗口通过调主对话框的成员函数GetMessage来显示聊天信息,当用户数增加时,播放欢迎音乐,当用户数减少时播放离开音乐。   源代码部分,请参照源码目录中命名的文件夹,查看对应功能。
    2022-03-02 10:15:20下载
    积分:1
  • VC++演示如何使用insert语句批量向数据库插入数据
    VC++演示如何使用insert语句批量向数据库插入数据,这个我感觉挺有用处吧,一般情况下,我们录入都是一条一条的,但信息量较大的时候,就需要批量插入数据了,我们可以先读取外部指定格式的文件,然后将数据转换为可插入的格式,然后使用insert批量向数据库中插入数据,有效提升工作效率。本示例测试前请先准备好数据库并连接上,否则会报错。
    2022-02-26 09:24:35下载
    积分:1
  • VC++ 显式链接:关闭计算机
    VC++ 显式链接:关闭计算机,制作一个竖长形的窗口,功能包括了关机、重启、注销、锁机等功能。
    2023-05-28 20:55:03下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载