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#
蓝速数据金秋上云季2G58/年怎么样?蓝速数据物理机拼团0元购劲爆?蓝速数据服务器秒杀爆产品好不好?蓝速数据是广州五联科技信息有限公司旗下品牌云计算平台、采用国内首选Zkeys公有云建设多种开通方式、具有IDC、ISP从业资格证IDC运营商新老用户值得信赖的商家。我司主要从事内地的枣庄、宿迁、深圳、绍兴、成都(市、县)。待开放地区:北京、广州、十堰、西安、镇江(市、县)。等地区数据中心业务,均KV...
Sharktech荷兰10G带宽的独立服务器月付319美元起,10Gbps共享带宽,不限制流量,自带5个IPv4,免费60Gbps的 DDoS防御,可加到100G防御。CPU内存HDD价格购买地址E3-1270v216G2T$319/月链接E3-1270v516G2T$329/月链接2*E5-2670v232G2T$389/月链接2*E5-2678v364G2T$409/月链接这里我们需要注意,默...
AlphaVPS是一家保加利亚本土主机商(DA International Group Ltd),提供VPS主机及独立服务器租用等,数据中心包括美国(洛杉矶/纽约)、德国、英国和保加利亚等,公司办公地点跟他们提供的保加利亚数据中心在一栋楼内,自有硬件,提供IPv4+IPv6,支持PayPal或者信用卡等方式付款。商家提供的大硬盘VPS主机,提供128GB-2TB磁盘,最低年付15欧元起,也可以选择...
declare_serial为你推荐
微信如何建群微信怎么建立群办公协同软件免费的多人协同办公软件哪些,我了解的有钉钉、企业微信,其他的还有么?网易公开课怎么下载哪位高手指导一下,如何下载网易公开课啊?开机滚动条开机滚动条太多怎么办?lockdownd[求教]在淘宝买了张激活卡,请问怎么取消激活ios系统ios系统有哪些版本?bluestack安卓模拟器bluestacks怎么用?cr2格式如何打开CR2格式的照片呢域名库域名赎回期过了多长时间可以注册怎么在图片上写文字如何用美图秀秀在照片上写字
100m网站空间 万网域名查询 西安服务器租用 域名备案中心 企业主机 godaddy优惠码 股票老左 美国网站服务器 卡巴斯基免费试用版 ebay注册 电信宽带测速软件 ssl加速 黑科云 美国代理服务器 godaddy域名 此网页包含的内容将不使用安全的https 美国西雅图独立 超低价 瓦工招聘 电脑主机打不开 更多