⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 twostolresultgrid.h

📁 很优秀的公交查询软件
💻 H
字号:
#ifndef	TWOSTOLRESULTGRID_H_
#define	TWOSTOLRESULTGRID_H_


class CTwoSToLResultGrid : public CCustomGrid
{
public:
	void Init();
	enum SORT_TYPE {
		ST_NONE,
		ST_STATIONNAMES,
		ST_STATIONNAMEE,
		ST_ROUTENAME,
		ST_DIR,
		ST_DISTANCE
	};
	virtual const Char* GetItemText(Int16 wRow, Int16 wColumn);
	virtual void DrawItem(Int16 wRow, Int16 wColumn, const RectangleType& rcBounds);
	virtual void OnColumnClick(Int16 wColumn);
	static SORT_TYPE GetSortType();
	void Add(const CString sS, CString sE, CString sR, UInt8 dir, UInt8 dist);
	void Clear();
	void SyncRowCount();
	CString GetItemStationS(Int16 i);
	CString GetItemStationE(Int16 i);
	CString GetItemRoute(Int16 i);
	UInt8 GetItemDir(Int16 i);
	
protected:

	struct CItemData {
		CString m_StationNameS;
		CString m_StationNameE;
		CString m_RouteName;
		Int8	m_Dir;
		Int8	m_Distance;
		
		friend Boolean operator<(const CItemData& rData1, const CItemData& rData2) 
		{
			switch (GetSortType()) {
			case ST_STATIONNAMES:
				return rData1.m_StationNameS < rData2.m_StationNameS;
				break;
			case ST_STATIONNAMEE:
				return rData1.m_StationNameE < rData2.m_StationNameE;
				break;
			case ST_ROUTENAME:
				return rData1.m_RouteName < rData2.m_RouteName;
				break;
			case ST_DIR:
				return rData1.m_Dir < rData2.m_Dir;
				break;
			case ST_DISTANCE:
				return rData1.m_Distance < rData2.m_Distance;
				break;
			default:
				return true;
				break;
			}
		}
	};
	
	
	static SORT_TYPE m_sortType;
	CArray<CItemData>	m_arrItems;
	CString	m_strText;
};

inline CTwoSToLResultGrid::SORT_TYPE CTwoSToLResultGrid::GetSortType() 
{
	return CTwoSToLResultGrid::m_sortType;
}


#endif/*TWOSTOLRESULTGRID_H_*/


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -