📄 listctrl.h
字号:
);
//
// Operations
////////////////////////////////////////////////////////////////////////////
//
//
// Arranges the items
//
bool Arrange(int nFlag = wxLIST_ALIGN_DEFAULT);
//
// Deletes an item
//
bool DeleteItem(long lItem);
//
// Deletes all items
bool DeleteAllItems(void);
//
// Deletes a column
//
bool DeleteColumn(int nCol);
//
// Deletes all columns
//
bool DeleteAllColumns(void);
//
// Clears items, and columns if there are any.
//
void ClearAll(void);
//
// Edit the label
//
wxTextCtrl* EditLabel( long lItem
,wxClassInfo* pTextControlClass = CLASSINFO(wxTextCtrl)
);
//
// End label editing, optionally cancelling the edit
//
bool EndEditLabel(bool bCancel);
//
// Ensures this item is visible
//
bool EnsureVisible(long lItem);
//
// Find an item whose label matches this string, starting from the item after 'start'
// or the beginning if 'start' is -1.
//
long FindItem( long lStart
,const wxString& rsStr
,bool bPartial = false
);
//
// Find an item whose data matches this data, starting from the item after 'start'
// or the beginning if 'start' is -1.
//
long FindItem( long lStart
,long lData
);
//
// Find an item nearest this position in the specified direction, starting from
// the item after 'start' or the beginning if 'start' is -1.
//
long FindItem( long lStart
,const wxPoint& rPoint
,int lDirection
);
//
// Determines which item (if any) is at the specified point,
// giving details in 'flags' (see wxLIST_HITTEST_... flags above)
//
long HitTest( const wxPoint& rPoint
,int& rFlags
);
//
// Inserts an item, returning the index of the new item if successful,
// -1 otherwise.
//
long InsertItem(wxListItem& rInfo);
//
// Insert a string item
//
long InsertItem( long lIndex
,const wxString& rsLabel
);
//
// Insert an image item
//
long InsertItem( long lIndex
,int nImageIndex
);
//
// Insert an image/string item
//
long InsertItem( long lIndex
,const wxString& rsLabel
,int nImageIndex
);
//
// For list view mode (only), inserts a column.
//
long InsertColumn( long lCol
,wxListItem& rInfo
);
long InsertColumn( long lCol
,const wxString& rsHeading
,int nFormat = wxLIST_FORMAT_LEFT
,int lWidth = -1
);
//
// set the number of items in a virtual list control
//
void SetItemCount(long lCount);
//
// Scrolls the list control. If in icon, small icon or report view mode,
// x specifies the number of pixels to scroll. If in list view mode, x
// specifies the number of columns to scroll.
// If in icon, small icon or list view mode, y specifies the number of pixels
// to scroll. If in report view mode, y specifies the number of lines to scroll.
//
bool ScrollList( int nDx
,int nDy
);
// Sort items.
//
// fn is a function which takes 3 long arguments: item1, item2, data.
// item1 is the long data associated with a first item (NOT the index).
// item2 is the long data associated with a second item (NOT the index).
// data is the same value as passed to SortItems.
// The return value is a negative number if the first item should precede the second
// item, a positive number of the second item should precede the first,
// or zero if the two items are equivalent.
//
// data is arbitrary data to be passed to the sort function.
//
bool SortItems( wxListCtrlCompare fn
,long lData
);
//
// IMPLEMENTATION
// --------------
//
virtual bool OS2Command( WXUINT uParam
,WXWORD wId
);
//
// Bring the control in sync with current m_windowStyle value
//
void UpdateStyle(void);
//
// Implementation: converts wxWidgets style to MSW style.
// Can be a single style flag or a bit list.
// oldStyle is 'normalised' so that it doesn't contain
// conflicting styles.
//
long ConvertToOS2Style( long& lOldStyle
,long lStyle
) const;
long ConvertArrangeToOS2Style(long lStyle);
long ConvertViewToOS2Style(long lStyle);
virtual MRESULT OS2WindowProc( WXUINT uMsg
,WXWPARAM wParam
,WXLPARAM lParam
);
// Event handlers
////////////////////////////////////////////////////////////////////////////
// Necessary for drawing hrules and vrules, if specified
void OnPaint(wxPaintEvent& rEvent);
protected:
//
// common part of all ctors
//
void Init(void);
//
// Free memory taken by all internal data
//
void FreeAllInternalData(void);
wxTextCtrl* m_pTextCtrl; // The control used for editing a label
wxImageList* m_pImageListNormal; // The image list for normal icons
wxImageList* m_pImageListSmall; // The image list for small icons
wxImageList* m_pImageListState; // The image list state icons (not implemented yet)
bool m_bOwnsImageListNormal;
bool m_bOwnsImageListSmall;
bool m_bOwnsImageListState;
long m_lBaseStyle; // Basic PM style flags, for recreation purposes
int m_nColCount; // PM doesn't have GetColumnCount so must
// keep track of inserted/deleted columns
//
// true if we have any internal data (user data & attributes)
//
bool m_bAnyInternalData;
//
// true if we have any items with custom attributes
//
bool m_bHasAnyAttr;
//
// These functions are only used for virtual list view controls, i.e. the
// ones with wxLC_VIRTUAL style
//
// return the text for the given column of the given item
//
virtual wxString OnGetItemText( long lItem
,long lColumn
) const;
//
// Return the icon for the given item. In report view, OnGetItemImage will
// only be called for the first column. See OnGetItemColumnImage for
// details.
//
virtual int OnGetItemImage(long lItem) const;
//
// Return the icon for the given item and column
//
virtual int OnGetItemColumnImage(long lItem, long lColumn) const;
//
// Return the attribute for the item (may return NULL if none)
//
virtual wxListItemAttr* OnGetItemAttr(long lItem) const;
private:
bool DoCreateControl( int nX
,int nY
,int nWidth
,int nHeight
);
DECLARE_DYNAMIC_CLASS(wxListCtrl)
DECLARE_EVENT_TABLE()
DECLARE_NO_COPY_CLASS(wxListCtrl)
}; // end of CLASS wxListCtrl
#endif // wxUSE_LISTCTRL
#endif // _WX_LISTCTRL_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -