【CSplitterWnd技巧一】改变分割窗口拖动条的大小

王朝vc·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

【CSplitterWnd技巧一】改变分割窗口拖动条的大小

作者:周焱

大家都知道默认的CSplitterWnd的拖动条很宽,看起来占地方,也不美观。怎么改变它呢?

研究CSplitterWnd的构造函数发现,拖动条的宽度是可以设置的。下面是我写的一个简单的CMySplitter类。他的效果如下:

下面是CMySplitter的代码:

=========================================================

//MySplitter.h

#pragma once

#include "stdafx.h"

class CMySplitter : public CSplitterWnd

{

public:

CMySplitter();

DECLARE_DYNCREATE(CMySplitter)

public:

~CMySplitter();

protected:

DECLARE_MESSAGE_MAP()

};

=========================================================

//MySplitter.cpp

#include "MySplitter.h"

IMPLEMENT_DYNCREATE(CMySplitter, CSplitterWnd)

//在构造函数中改变分割条的宽度和属性!

CMySplitter::CMySplitter()

{

m_cxSplitter = 4; //must >=4 ,拖动时拖动条的宽度

m_cySplitter = 4;

m_cxBorderShare = 0; //按下鼠标时拖动条的偏移量

m_cyBorderShare = 0;

m_cxSplitterGap= 1; //splitter拖动条的宽度

m_cySplitterGap= 1;

}

CMySplitter::~CMySplitter()

{

}

BEGIN_MESSAGE_MAP(CMySplitter, CSplitterWnd)

END_MESSAGE_MAP()

=========================================================

使用时,在主窗口中包含头文件MySplitter.h,将CSplitterWnd改成CMySplitter就可以了。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航