切分窗口的拉杆太粗了,可否改变它的默认外观,如何做?谢谢

baobao 2001-07-26 01:52:59
...全文
124 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cnss 2001-07-26
噢,知道了,我这样做就不能揪着拉杆跑了
回复
cnss 2001-07-26
我把CMySplitterWnd::OnLButtonDown里的语句注释掉,这样单击就不会再变回去,请问这样做有没有什么副作用?
void CMySplitterWnd::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default

//CSplitterWnd::OnLButtonDown(nFlags, point);
}
回复
baobao 2001-07-26

我怎么编译了几次没有问题,可在编译了两边,出现如下错误,为何?


MainFrm.obj : error LNK2005: "public: __thiscall myCSplitterWnd::myCSplitterWnd(void)" (??0myCSplitterWnd@@QAE@XZ) already defined in SPLITWIN.obj

//我的重载方法有问题吗?
// MainFrm.h : interface of the CMainFrame class
//
/////////////////////////////////////////////////////////////////////////////

#if !defined(AFX_MAINFRM_H__CB1A42E3_296F_48F7_A908_31308F98A2A4__INCLUDED_)
#define AFX_MAINFRM_H__CB1A42E3_296F_48F7_A908_31308F98A2A4__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


class myCSplitterWnd : public CSplitterWnd
{

public:
myCSplitterWnd();


};

myCSplitterWnd::myCSplitterWnd()
{
m_cxSplitter = m_cySplitter = 10 + 1 + 1;
m_cxBorderShare = m_cyBorderShare = 0;
m_cxSplitterGap = m_cySplitterGap = 10 + 1 + 1;
m_cxBorder = m_cyBorder = 1;

};

class CMainFrame : public CFrameWnd
{

protected: // create from serialization only
CMainFrame();
DECLARE_DYNCREATE(CMainFrame)

// Attributes
protected:
//////////////////////////
//定义派生的CSplitterWnd//
///////////////////////////
myCSplitterWnd m_wndSplitter;


public:

// Operations
public:

// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMainFrame)
public:
virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext);
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
//}}AFX_VIRTUAL

// Implementation
public:
virtual ~CMainFrame();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif

protected: // control bar embedded members
CStatusBar m_wndStatusBar;
CToolBar m_wndToolBar;

// Generated message map functions
protected:
//{{AFX_MSG(CMainFrame)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
// NOTE - the ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_MAINFRM_H__CB1A42E3_296F_48F7_A908_31308F98A2A4__INCLUDED_)




回复
Semigod 2001-07-26
我也是找了好久才从国外一个网站上找到的。以上两个3同时改为10试试,接后不会恢复的。
回复
baobao 2001-07-26
还有一个问题需要解决,在拉杆上单击鼠标,拉杆会变粗啊,拉动后又恢复了,为什么?
回复
baobao 2001-07-26
果然好用!怎么找到这些变量的?我想学学“解决此问题的方法”
回复
Semigod 2001-07-26
重载CSplitterWnd 类,然后改变以下变量的值(可以派生,然后再在构造函数中完成)
m_cxSplitter = m_cySplitter = 3 + 1 + 1;
m_cxBorderShare = m_cyBorderShare = 0;
m_cxSplitterGap = m_cySplitterGap = 3 + 1 + 1;
m_cxBorder = m_cyBorder = 1;
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2001-07-26 01:52
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……