VC++中的视图类和文档类有什么区别啊,各有什么作用啊?
视图类(CView)的三个子类
CScrollView类提供视图的滚动显示;CEditView类支持在视图中的文本编辑操作;CHtmlView类支持在视图中显示和操作html文件。
文档类不仅可以实现简单数据结构的读写操作,还可以通过对CObiect类的派生实现对复杂数据结构的读写操作,由于该方法是VisualC++程序设计的基本方法,本文就以一个简单的例子来介绍可序列化类的实现方法。
实现条件:
实现序列化的的类需要满足一系列条件:
1. 该类需要从CObject类派生(可以是间接派生);
2. 在类中中进行DECLARE_SERIAL宏定义;
3. 类存在有缺省的构造函数;
4. 类中实现了Serialize()函数,并且在其中调用基类的序列化函数;
5. 使用IMPLEMENT_SERIAL宏指明类名及版本号;如何建立一个CDib类?
class CDib : public CObject
{
DECLARE_SERIAL(CDib)
// Public member
public:
// Constructor
CDib();
CDib(CDC * pDC, // Memory DC
int nbits=0, // use default bits/pixel
BOOL bCompr=TRUE);
CDib(CDC * pDC, // DC
CBitmap *pBitmap, // Bitmap pointer
int nbits=0, // use default bits/pixel
BOOL bCompr=TRUE);
CDib(HDIB hDib, // DIB Handle
BOOL bDataHandleOnly=TRUE);
virtual ~CDib();
virtual void Serialize(CArchive &ar);
public:
// Operations
BOOL LoadDib(UINT uIDS, LPCSTR lpszDibType = "DIB");
BOOL LoadDib(LPCSTR lpszDibRes, LPCSTR lpszDibType = "DIB");
BOOL LoadDibFile(CString lpszDibFile);
BOOL SaveDib(LPCSTR lpszDibFile);
BOOL Display(CDC *, CPoint ptDest, DWORD dwRop=SRCCOPY);
BOOL Display(CDC *, CPoint ptDest, int Cx, int Cy, DWORD dwRop=SRCCOPY);
BOOL Display(CDC *, CRect rcDest, CRect rcSrc,DWORD dwRop=SRCCOPY);
BOOL IsEmpty();
int GetColorBits();
DWORD GetLength();
WORD GetWidth();
WORD GetHeight();
HDIB GetHandle();
HDIB CopyHandle();
HANDLE CopyDataHandle();
WORD GetNumColors();
WORD GetPaletteSize();
CPalette* GetPalette();
CBitmap* MakeBitmap(CDC * pDC);
void SetMonoColors(DWORD dwForeground, DWORD dwBackground);
BOOL GetMonoColors(DWORD& dwForeground, DWORD& dwBackground);
private:
BOOL AllocMemory(BOOL bRealloc=FALSE);
BOOL MakePalette();
BOOL ReadDib(CFile *pFile);
BOOL WriteDib(CFile *pFile);
// Data
private:
HDIB m_hDib;
LPBITMAPFILEHEADER m_lpBMFH;
LPBITMAPINFOHEADER m_lpBMIH; // pointer to an Win30-style DIB
LPBITMAPCOREHEADER m_lpBMCH; // pointer to an other-style DIB
LPBITMAPINFO m_lpBMI; // pointer to an Win30-style DIB
LPBITMAPCOREINFO m_lpBMC; // pointer to an other-style DIB
LPSTR m_lpData;
CPalette * m_pPalette;
CBitmap * m_pBitmap;
char * m_lpBuf; // DIB data buffer
DWORD m_dwLength; // total buffer length, including header
int m_nBits; // number of color bits per pixel
//伍千学接口
public:
/*
CDC *SetBmp(CDC *pDC,CRect rect,CString FileName);
CDC *SetBmp(CDC *pDC,CDC *mDC,CRect rect,CString FileName);
CDC *SetBmp(CWnd *Wnd,CRect rect,CString FileName);
CDC *SetBmp(CWnd *Wnd,CString FileName);
CDC *SetBmp(CWnd *Wnd,CDC *mDC,CString FileName);
CDC *GetBmp();
void XianShi(CDC *pDC);
// 1 标志文件装入,2 标志文件没有装入
BOOL m_BiaoZhi;
CDC m_DC;
*/
};数据库死锁,怎样解决
察看死锁
select sess.sid,
sess.serial#,
lo.oracle_username,
lo.os_user_name,
ao.object_name,
lo.locked_mode
from v$locked_object lo,
dba_objects ao,
v$session sess
where ao.object_id = lo.object_id and lo.session_id = sess.sid
order by ao.object_name ;
清除死锁
alter system kill session sid,.serial#
我们在选择虚拟主机和云服务器的时候,是不是经常有看到有的线路是BGP线路,比如前几天有看到服务商有国际BGP线路和国内BGP线路。这个BGP线路和其他服务线路有什么不同呢?所谓的BGP线路机房,就是在不同的运营商之间通过技术手段时间各个网络的兼容速度最佳,但是IP地址还是一个。正常情况下,我们看到的某个服务商提供的IP地址,在电信和联通移动速度是不同的,有的电信速度不错,有的是移动速度好。但是如果...
物语云计算(MonogatariCloud)是一家成立于2016年的老牌国人商家,主营国内游戏高防独服业务,拥有多家机房资源,产品质量过硬,颇有一定口碑。本次带来的是美国圣何塞 Equinix 机房的高性能I9-10980XE大带宽VPS,去程CN2GIA回程AS9929,美国原生IP,支持解锁奈飞等应用,支持免费安装Windows系统。值得注意的是,物语云采用的虚拟化技术为Hyper-V,资源全...
官方网站:点击访问青云互联活动官网优惠码:终身88折扣优惠码:WN789-2021香港测试IP:154.196.254美国测试IP:243.164.1活动方案:用户购买任意全区域云服务器月付以上享受免费更换IP服务;限美国区域云服务器凡是购买均可以提交工单定制天机防火墙高防御保护端口以及保护模式;香港区域购买季度、半年付、年付周期均可免费申请额外1IP;使用优惠码购买后续费周期终身同活动价,价格不...
declare_serial为你推荐
ov日本OV是什么意思?郭彩妮台灣有什麽新的電視劇?博客外链外链都要怎么做?博客外链有没有效果?spgnux思普操作系统怎么样吴晓波频道买粉看吴晓波频道的心得宕机何谓宕机?ios系统iOS系统是什么小米手柄买了个小米蓝牙手柄,游戏是可以玩但是按键位置不舒服,怎么可以改按键网站优化方案网站优化方案如何写?宽带接入服务器宽带接入服务器的五大功能是什么?
台湾服务器租用 新加坡服务器 diahosting 安云加速器 优惠码 表格样式 美国php主机 云图标 宁波服务器 静态空间 常州联通宽带 卡巴斯基免费试用版 美国盐湖城 贵阳电信测速 摩尔庄园注册 腾讯数据库 阿里云邮箱申请 博客域名 linux服务器系统 zencart安装 更多