📄 listex.h
字号:
#if !defined(AFX_LISTEX_H__F80434A6_DF5F_4332_89C4_EA3C06CB0846__INCLUDED_)
#define AFX_LISTEX_H__F80434A6_DF5F_4332_89C4_EA3C06CB0846__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// ListEx.h : header file
//
#include "ItemDlg.h"
#include <afxtempl.h>
/////////////////////////////////////////////////////////////////////////////
// CListEx window
#define LIST_OPEN _T("OPEN")
#define LIST_CLOSE _T("CLOSE")
class CListEx : public CListCtrl
{
// Construction
public:
CListEx();
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CListEx)
public:
virtual BOOL PreTranslateMessage(MSG* pMsg);
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CListEx();
// Generated message map functions
protected:
//{{AFX_MSG(CListEx)
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg void OnSetFocus(CWnd* pOldWnd);
afx_msg void OnKillFocus(CWnd* pNewWnd);
afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
int m_iOpenList[2], m_iImage;//m_iOpenList[0]展开点行号,m_iOpenList[1]展开行数
DWORD m_iId;
CImageList m_SmallImage;
CItemDlg m_ItemDlg;
CRect m_rect;
// CString m_memstr[3];
// LVITEM m_memlvi;
CList<LIST_INFO, LIST_INFO&> m_ListInfo;
void OpenList( int iSelect, int iHeight );
void CloseList( int &iSelect );
int AddImage( UINT nIDResource );
BOOL GetItemRectEx( int iSelect, int iHeight, LPRECT pRect );
void ChangeRect_Item( LPRECT pRect, const int iHeight );
void ChangeRect_List( CWnd* pWnd, LPRECT pRect );
void RedrawItemDlg();
BOOL IsClose( int iSelect );
// void memItem( int iSelect, BOOL bIN = TRUE );
BOOL FindInfo( DWORD dwId, LIST_INFO& ListInfo );
int GetiHeight( int iSelect );
BOOL SetOpenClose( int iSelect, LPCTSTR strData ) { return this->SetItemText( iSelect, 3, strData ); }
public:
int InsertItemEx( LPSTR str1, LPCTSTR str2, LPCTSTR str3, UINT nIDResource, CString* pStrList, int iList, LPCTSTR strEnd = _T(""), LPCTSTR strBT = _T(""), BUTTON_CALLBACK lpOnButton = NULL );//第1~3列信息, 图片,最后一行信息,按钮信息,按钮的回调
DWORD Start( CWnd* pWnd, int cx, int cy, int nInitial );//pWnd窗体指针,cx,cy图片尺寸,图片数量
BOOL DeleteItemEx( int nItem = -1 );//-1为删除当前行
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_LISTEX_H__F80434A6_DF5F_4332_89C4_EA3C06CB0846__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -