用ListBox作滚屏显示的一种方法 .
- void CTestDlg::ShowInfo(CString str, int code)
- {
- m_ListInfo.InsertString(m_ListInfo.GetCount(),str);
- m_ListInfo.SetCurSel(m_ListInfo.GetCount()-1);
- }
void CTestDlg::ShowInfo(CString str, int code)
{
m_ListInfo.InsertString(m_ListInfo.GetCount(),str);
m_ListInfo.SetCurSel(m_ListInfo.GetCount()-1);
}
如上所示:
m_ListInfo为继承自CListBox的列表框:
- class CTestListBox : public CListBox
- {
- // Construction
- public:
- CTestListBox();
- // Attributes
- public:
- // Operations
- public:
- // Overrides
- // ClassWizard generated virtual function overrides
- //{{AFX_VIRTUAL(CTestListBox)
- //}}AFX_VIRTUAL
- // Implementation
- public:
- virtual ~CTestListBox();
- // Generated message map functions
- protected:
- //{{AFX_MSG(CTestListBox)
- afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
- afx_msg void OnMenuRefresh();
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
- };
- /
- //{{AFX_INSERT_LOCATION}}
- // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
- #endif // !defined(AFX_TESTLISTBOX_H__14AF8E00_C055_4880_8E2D_EF702C355078__INCLUDED_)
class CTestListBox : public CListBox
{
// Construction
public:
CTestListBox();
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CTestListBox)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CTestListBox();
// Generated message map functions
protected:
//{{AFX_MSG(CTestListBox)
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg void OnMenuRefresh();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_TESTLISTBOX_H__14AF8E00_C055_4880_8E2D_EF702C355078__INCLUDED_)
清屏操作:
- void CTestListBox::OnMenuRefresh()
- {
- // TODO: Add your command handler code here
- DWORD len=GetCount();
- for(DWORD i=0;i<len;i++)
- DeleteString(0);
- }
void CTestListBox::OnMenuRefresh()
{
// TODO: Add your command handler code here
DWORD len=GetCount();
for(DWORD i=0;i<len;i++)
DeleteString(0);
}
如此即可用列表框作为滚屏显示了.