The CGXRecordInfoSplitterWnd embeds a non-resizable CGXRecordInfoBeam on the left side of the horizontal scrollbar of a CGXSplitterWnd. The user can use this CGXRecordInfoBeam to navigate through a grid just like you know from applications like MS Access or MS Query.
Here is how to use this class:
CRecordStatusMDIChildWnd::CRecordStatusMDIChildWnd()
{
m_pWndRecordInfo = NULL;
}
CRecordStatusMDIChildWnd::~CRecordStatusMDIChildWnd()
{
delete m_pWndRecordInfo;
}
BOOL CRecordStatusMDIChildWnd::OnCreateClient(LPCREATESTRUCT /*lpcs*/, CCreateContext* pContext)
{
#if _MFC_VER >= 0x0400
// use the new record info wnd with support for dynamic splitter views
CGXRecordInfoSplitterWnd* pWndRecordInfo = new CGXRecordInfoSplitterWnd;
if (!pWndRecordInfo->Create( this,
2, 2, // TODO: adjust the number of rows, columns
CSize( 10, 10 ), // TODO: adjust the minimum pane size
pContext ))
return FALSE;
#else
// record info wnd without support for dynamic splitter views
CGXRecordInfoWnd* pWndRecordInfo = new CGXRecordInfoWnd;
if (!pWndRecordInfo->Create(this, pContext))
retun FALSE;
#endif
m_pWndRecordInfo = pWndRecordInfo;
return TRUE;
}
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
#if _MFC_VER >= 0x0400
// use the new record info wnd with support for dynamic splitter views
m_pWndSplitter = new CGXRecordInfoSplitterWnd;
if (!m_pWndSplitter->Create( this,
2, 2, // TODO: adjust the number of rows, columns
CSize( 10, 10 ), // TODO: adjust the minimum pane size
pContext ))
return FALSE;
return TRUE;
#else
// record info wnd without support for dynamic splitter views
m_pWndRecordInfo = new CGXRecordInfoWnd;
return m_pWndRecordInfo->Create(this, pContext, WS_CHILD|WS_VISIBLE|WS_HSCROLL);
#endif
}
Check out gxquery, daoquery or dbfbrows for a sample on using this class in an MDI frame. Check out dbgrid for a sample on using this class in an SDI frame.
#include <gxall.h>