Click here to Skip to main content
15,897,273 members
Articles / Desktop Programming / MFC

CSSplitter: A Splitter with the Ability to Save/Restore its Position

Rate me:
Please Sign up or sign in to vote.
4.89/5 (56 votes)
29 Sep 2018GPL33 min read 140.7K   7.2K   75  
A splitter control derived from CStatic for dialog controls, and that can be used not only within the restricted splitter pane.
// MainFrm.h : interface of the CMainFrame class
//
/////////////////////////////////////////////////////////////////////////////

#if !defined(AFX_MAINFRM_H__BBFAEC8D_7CAD_11D8_B153_CEBADFA6E04F__INCLUDED_)
#define AFX_MAINFRM_H__BBFAEC8D_7CAD_11D8_B153_CEBADFA6E04F__INCLUDED_

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

class CMainFrame : public CFrameWnd
{
	
protected: // create from serialization only
	CMainFrame();
	DECLARE_DYNCREATE(CMainFrame)

// Attributes
public:

	CToolBar    m_wndToolBar;

// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CMainFrame)
	public:
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
	virtual void ActivateFrame(int nCmdShow = -1);
	//}}AFX_VIRTUAL

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

private:

	void WriteWindowPlacement(WINDOWPLACEMENT *pwp);
	BOOL ReadWindowPlacement(WINDOWPLACEMENT *pwp);

protected:  // control bar embedded members
	CStatusBar  m_wndStatusBar;	

// Generated message map functions
protected:
	//{{AFX_MSG(CMainFrame)
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnClose();
	//}}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__BBFAEC8D_7CAD_11D8_B153_CEBADFA6E04F__INCLUDED_)

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The GNU General Public License (GPLv3)


Written By
Ukraine Ukraine
PhD in Physics.
Fields of interest: C/C++, GUI application development using VC++ and MFC; databases such as MS SQL Server, MS Access, and MySQL; Web site development.

Comments and Discussions