Click here to Skip to main content
15,867,686 members
Articles / Desktop Programming / MFC
Article

A pager control wrapper class

Rate me:
Please Sign up or sign in to vote.
5.00/5 (5 votes)
15 Dec 1999 59.8K   1.4K   19   2
This article presents a wrapper class for the pager control
  • Download demo project - 22 Kb
  • Download source files - 5 Kb
  • Sample Image - controls_pager.gif

    The class CCJPagerCtrl is fairly simple to use. It can be used in either a dialog or view. For demo purposes, I implemented it in a dialog using a CToolBar, but you can use any control or view class as the child window. Open your dialog in your resource editor and add a custom control. Modify the properties of the control as shown below:

    Sample Image

    In the OnInitDialog() section, add the following code:

    // TODO: Add extra initialization here
    if( !m_wndToolBar.Create(&m_Pager) ||
    	!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
    	{
    		TRACE0("Failed to create toolbar\n");
    		return -1;      // fail to create
    	}
    	
    	// Make the toolbar flat.
    	m_wndToolBar.ModifyStyle(0, 0x0800);
    	
    	// Set the child HWND.
    	m_Pager.SetChild(m_wndToolBar.m_hWnd);
    	
    	// Set the pager style to PGS_HORZ.
    	m_Pager.ModifyStyle(0,PGS_HORZ);
    	
    	// Set the button size to 15.
    	m_Pager.SetButtonSize(15);
    	
    	// Determine size of child
    	SIZE Size;
    	m_wndToolBar.SendMessage(TB_GETMAXSIZE,0,(LPARAM)&Size);
    	
    	// Set the scroll area for pager.
    	m_Pager.SetScrollArea(Size.cx+15, Size.cy+15);

    NOTE:

    If you are using Visual C++ 5, you will need to include the support file comm_control.h in your project, unless you have installed the SDK, in which case you won't need this. If you have any questions, feel free to drop me a line.

    License

    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here


    Written By
    CEO Codejock Technologies, LLC
    United States United States
    This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
    This is a Organisation (No members)


    Comments and Discussions

     
    GeneralRe: Thanks Pin
    mla1542-Oct-06 8:00
    mla1542-Oct-06 8:00 
    Generalc# version Pin
    matute2228-Feb-04 9:31
    matute2228-Feb-04 9:31 

    General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.