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

📄 mapx.cpp

📁 一个简单的Sample程序
💻 CPP
📖 第 1 页 / 共 5 页
字号:
}

/////////////////////////////////////////////////////////////////////////////
// CMapXLayer operations

void CMapXLayer::LabelAtPoint(double X, double Y)
{
	static BYTE parms[] =
		VTS_R8 VTS_R8;
	InvokeHelper(0x12, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 X, Y);
}

void CMapXLayer::ClearCustomLabels()
{
	InvokeHelper(0x13, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

CMapXFeature CMapXLayer::AddFeature(LPDISPATCH Source, const VARIANT& RowValues)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_DISPATCH VTS_VARIANT;
	InvokeHelper(0x15, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		Source, &RowValues);
	return CMapXFeature(result);
}

void CMapXLayer::UpdateFeature(
	const VARIANT& Target, 
	const VARIANT& Source,
	const VARIANT& RowValues)
{
	static BYTE parms[] =
		VTS_VARIANT VTS_VARIANT VTS_VARIANT;
	InvokeHelper(0x14, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 &Target, &Source, &RowValues);
}

void CMapXLayer::DeleteFeature(const VARIANT& Target)
{
	static BYTE parms[] =	VTS_VARIANT;
	InvokeHelper(0x16, DISPATCH_METHOD, VT_EMPTY, NULL, parms, &Target);
}

void CMapXLayer::Invalidate(const VARIANT& InvalidRect)
{
	static BYTE parms[] =
		VTS_VARIANT;
	InvokeHelper(0x17, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 &InvalidRect);
}

CMapXFeatures CMapXLayer::SearchWithinDistance(LPDISPATCH Source, double Distance, short Units, short SearchType)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_DISPATCH VTS_R8 VTS_I2 VTS_I2;
	InvokeHelper(0x18, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		Source, Distance, Units, SearchType);
	return CMapXFeatures(result);
}

CMapXFeatures CMapXLayer::SearchWithinRectangle(LPDISPATCH Rectangle, short SearchType)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_DISPATCH VTS_I2;
	InvokeHelper(0x19, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		Rectangle, SearchType);
	return CMapXFeatures(result);
}

CMapXFeatures CMapXLayer::AllFeatures()
{
	LPDISPATCH result;
	InvokeHelper(0x1a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
	return CMapXFeatures(result);
}

CMapXFeatures CMapXLayer::NoFeatures()
{
	LPDISPATCH result;
	InvokeHelper(0x1b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
	return CMapXFeatures(result);
}

CMapXFeatures CMapXLayer::SearchWithinFeature(LPDISPATCH Feature, short SearchType)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_DISPATCH VTS_I2;
	InvokeHelper(0x1c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		Feature, SearchType);
	return CMapXFeatures(result);
}

CMapXFeatures CMapXLayer::SearchAtPoint(LPDISPATCH Point, short SearchResultFlags)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_DISPATCH VTS_I2;
	InvokeHelper(0x1d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		Point, SearchResultFlags);
	return CMapXFeatures(result);
}

void CMapXLayer::DrillDownRemoveFeatures(LPCTSTR Level, const VARIANT& FeatureKeys)
{
	static BYTE parms[] =
		VTS_BSTR VTS_VARIANT;
	InvokeHelper(0x1e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Level, &FeatureKeys);
}

void CMapXLayer::DrillDownAddFeatures(LPCTSTR Level, const VARIANT& FeatureKeys)
{
	static BYTE parms[] =
		VTS_BSTR VTS_VARIANT;
	InvokeHelper(0x1f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Level, &FeatureKeys);
}

CMapXFeatures CMapXLayer::GetDrilldownFeaturesByID(LPCTSTR Level, const VARIANT& FeatureKeys)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_BSTR VTS_VARIANT;
	InvokeHelper(0x21, DISPATCH_METHOD, VT_DISPATCH, (void *)&result, parms,
		 Level, &FeatureKeys);
	return CMapXFeatures(result);
}

void CMapXLayer::DrilldownReset(LPCTSTR Level)
{
	static BYTE parms[] =
		VTS_BSTR;
	InvokeHelper(0x22, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Level);
}

CMapXFeature CMapXLayer::GetFeatureByID(long FeatureID)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x23, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		FeatureID);
	return CMapXFeature(result);
}

void CMapXLayer::Refresh()
{
	InvokeHelper(0x24, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

long CMapXLayer::FeatureIDFromFeatureName(LPCTSTR Name)
{
	long result;
	static BYTE parms[] =
		VTS_BSTR;
	InvokeHelper(0x26, DISPATCH_METHOD, VT_I4, &result, parms, Name);
	return result;
}

CMapXFeatures CMapXLayer::Search(LPCTSTR strWhere, const VARIANT& Variables)
{
	LPDISPATCH result;
	static BYTE parms[] = VTS_BSTR VTS_VARIANT;
	InvokeHelper(0x28, DISPATCH_METHOD, VT_DISPATCH, (void *)&result, parms, strWhere, &Variables);
	return CMapXFeatures(result);
}

void CMapXLayer::BeginAccess(long BeginAccessType)
{
	static BYTE parms[] = VTS_I2;
	InvokeHelper(0x29, DISPATCH_METHOD, VT_EMPTY, NULL, parms, BeginAccessType);
}

void CMapXLayer::EndAccess(const VARIANT& EndAccessType)
{
	static BYTE parms[] = VTS_VARIANT;
	InvokeHelper(0x2a, DISPATCH_METHOD, VT_EMPTY, NULL, parms, &EndAccessType);
}

CMapXFeature CMapXLayer::GetFeatureByKey(LPCTSTR FeatureKey)
{
	LPDISPATCH result;
	static BYTE parms[] = VTS_BSTR;
	InvokeHelper(0x2f, DISPATCH_METHOD, VT_DISPATCH, (void *)&result, parms, FeatureKey);
	return CMapXFeature(result);
}

CString CMapXLayer::FeatureKeyFromFeatureName(LPCTSTR strKeyValue)
{
	CString result;
	static BYTE parms[] = VTS_BSTR;
	InvokeHelper(0x30, DISPATCH_METHOD, VT_BSTR, (void *)&result, parms, strKeyValue);
	return result;
}

/////////////////////////////////////////////////////////////////////////////
// CMapXField properties

long CMapXField::GetType()
{
	long result;
	GetProperty(0x1, VT_I4, (void*)&result);
	return result;
}

CString CMapXField::GetName()
{
	CString result;
	GetProperty(0x2, VT_BSTR, (void*)&result);
	return result;
}

long CMapXField::GetAggregationFunction()
{
	long result;
	GetProperty(0x3, VT_I4, (void*)&result);
	return result;
}

short CMapXField::GetWidth()
{
	short result;
	GetProperty(0x4, VT_I2, (void*)&result);
	return result;
}

short CMapXField::GetPrecision()
{
	short result;
	GetProperty(0x5, VT_I2, (void*)&result);
	return result;
}

short CMapXField::GetDecimals()
{
	short result;
	GetProperty(0x6, VT_I2, (void*)&result);
	return result;
}

BOOL CMapXField::GetIndexed()
{
	BOOL result;
	GetProperty(0x7, VT_BOOL, (void*)&result);
	return result;
}

long CMapXField::GetTypeEx()
{
	long result;
	GetProperty(0x8, VT_I4, (void*)&result);
	return result;
}

/////////////////////////////////////////////////////////////////////////////
// CMapXField operations


/////////////////////////////////////////////////////////////////////////////
// CMapXDataset properties

CString CMapXDataset::GetName()
{
	CString result;
	GetProperty(0x1, VT_BSTR, (void*)&result);
	return result;
}

void CMapXDataset::SetName(LPCTSTR propVal)
{
	SetProperty(0x1, VT_BSTR, propVal);
}

long CMapXDataset::GetRowCount()
{
	long result;
	GetProperty(0x2, VT_I4, (void*)&result);
	return result;
}

CMapXFields CMapXDataset::GetFields()
{
	LPDISPATCH result;
	GetProperty(0x3, VT_DISPATCH, (void*)&result);
	return CMapXFields(result);
}

CMapXThemes CMapXDataset::GetThemes()
{
	LPDISPATCH result;
	GetProperty(0x4, VT_DISPATCH, (void*)&result);
	return CMapXThemes(result);
}

long CMapXDataset::GetGeoField()
{
	long result;
	GetProperty(0x5, VT_I4, (void*)&result);
	return result;
}

long CMapXDataset::GetSecondaryGeoField()
{
	long result;
	GetProperty(0x6, VT_I4, (void*)&result);
	return result;
}

CMapXLayer CMapXDataset::GetLayer()
{
	LPDISPATCH result;
	GetProperty(0x7, VT_DISPATCH, (void*)&result);
	return CMapXLayer(result);
}

short CMapXDataset::GetType()
{
	short result;
	GetProperty(0xb, VT_I2, (void*)&result);
	return result;
}

BOOL CMapXDataset::GetReadOnly()
{
	BOOL result;
	GetProperty(0xc, VT_BOOL, (void*)&result);
	return result;
}

/////////////////////////////////////////////////////////////////////////////
// CMapXDataset operations

void CMapXDataset::Refresh()
{
	InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

VARIANT CMapXDataset::GetValue(const VARIANT& Row, const VARIANT& Column)
{
	VARIANT result;
	static BYTE parms[] =
		VTS_VARIANT VTS_VARIANT;
	InvokeHelper(0x9, DISPATCH_PROPERTYGET, VT_VARIANT, (void*)&result, parms,
		&Row, &Column);
	return result;
}

CMapXSourceRows CMapXDataset::GetSourceRows(const VARIANT& Row)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_VARIANT;
	InvokeHelper(0xa, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
		&Row);
	return CMapXSourceRows(result);
}

CMapXRowValues CMapXDataset::GetRowValues(const VARIANT& Row)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_VARIANT;
	InvokeHelper(0xd, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms, &Row);
	return CMapXRowValues(result);
}

CMapXField CMapXDataset::AddField(LPCTSTR Name, LPCTSTR Expression)
{
	LPDISPATCH result;
	static BYTE parms[] =	VTS_BSTR VTS_BSTR;
	InvokeHelper(0xe, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms, Name, Expression);
	return CMapXField(result);
}

/////////////////////////////////////////////////////////////////////////////
// CMapXThemes properties

LPENUMVARIANT CMapXThemes::GetEnumerator()
{
	LPENUMVARIANT pEnumVariant = 0;
	LPUNKNOWN pUnknown = 0;
	GetProperty(0xfffffffc, VT_UNKNOWN, (void*)&pUnknown);	
	if(pUnknown)
	{
		pUnknown->QueryInterface(IID_IEnumVARIANT, (void**)&pEnumVariant);
		pUnknown->Release();
	}	
	return pEnumVariant;
}

long CMapXThemes::GetCount()
{
	long result;
	GetProperty(0x1, VT_I4, (void*)&result);
	return result;
}

/////////////////////////////////////////////////////////////////////////////
// CMapXThemes operations

CMapXTheme CMapXThemes::Add(const VARIANT& Type, const VARIANT& Field, const VARIANT& Name, const VARIANT& ComputeTheme)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT;
	InvokeHelper(0x2, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		&Type, &Field, &Name, &ComputeTheme);
	return CMapXTheme(result);
}

CMapXTheme CMapXThemes::Item(const VARIANT& Index)
{
	LPDISPATCH result;
	static BYTE parms[] =
		VTS_VARIANT;
	InvokeHelper(0x3, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
		&Index);
	return CMapXTheme(result);
}

void CMapXThemes::Remove(const VARIANT& Index)
{
	static BYTE parms[] =
		VTS_VARIANT;
	InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 &Index);
}

void CMapXThemes::RemoveAll()
{
	InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

/////////////////////////////////////////////////////////////////////////////
// CMapXTheme properties

BOOL CMapXTheme::GetVisible()
{
	BOOL result;
	GetProperty(0x1, VT_BOOL, (void*)&result);
	return result;
}

void CMapXTheme::SetVisible(BOOL propVal)
{
	SetProperty(0x1, VT_BOOL, propVal);
}

short CMapXTheme::GetType()
{
	short result;
	GetProperty(0x2, VT_I2, (void*)&result);
	return result;
}

CMapXThemeProperties CMapXTheme::GetProperties()
{
	LPDISPATCH result;
	GetProperty(0x3, VT_DISPATCH, (void*)&result);
	return CMapXThemeProperties(result);
}

CMapXLegend CMapXTheme::GetLegend()
{
	LPDISPATCH result;
	GetProperty(0x4, VT_DISPATCH, (void*)&result);
	return CMapXLegend(result);
}

BOOL CMapXTheme::GetAutoRecompute()
{
	BOOL result;
	GetProperty(0x5, VT_BOOL, (void*)&result);
	return result;
}

void CMapXTheme::SetAutoRecompute(BOOL propVal)
{
	SetProperty(0x5, VT_BOOL, propVal);
}

CString CMapXTheme::GetName()
{
	CString result;
	GetProperty(0x6, VT_BSTR, (void*)&result);
	return result;
}

void CMapXTheme::SetName(LPCTSTR propVal)
{
	SetProperty(0x6, VT_BSTR, propVal);
}

CMapXThemeProperties CMapXTheme::GetThemeProperties()
{
	LPDISPATCH result;
	GetProperty(0x7, VT_DISPATCH, (void*)&result);
	return CMapXThemeProperties(result);
}

CMapXLayer CMapXTheme::GetLayer()
{
	LPDISPATCH result;
	GetProperty(0x9, VT_DISPATCH, (void*)&result);
	return CMapXLayer(result);
}

CMapXFields CMapXTheme::GetFields()
{
	LPDISPATCH result;
	GetProperty(0xa, VT_DISPATCH, (void*)&result);
	return CMapXFields(result);
}

double CMapXTheme::GetDataMin()
{
	double result;
	GetProperty(0xb, VT_R8, (void*)&result);
	return result;
}

void CMapXTheme::SetDataMin(double propVal)
{
	SetProperty(0xb, VT_R8, propVal);
}

double CMapXTheme::GetDataMax()
{
	double result;
	GetProperty(0xc, VT_R8, (void*)&result);
	return result;
}

void CMapXTheme::SetDataMax(double propVal)
{
	SetProperty(0xc, VT_R8, propVal);
}

BOOL CMapXTheme::GetComputeTheme()
{
	BOOL result;
	GetProperty(0xd, VT_BOOL, (void*)&result);
	return result;
}

void CMapXTheme::SetComputeTheme(BOOL propVal)
{
	SetProperty(0xd, VT_BOOL, propVal);
}

/////////////////////////////////////////////////////////////////////////////
// CMapXTheme operations

BOOL CMapXTheme::ThemeDlg(const VARIANT& HelpFile, const VARIANT& HelpID)
{
	BOOL bRetVal;
	static BYTE parms[] =
		VTS_VARIANT VTS_VARIANT;
	InvokeHelper(0x8, DISPATCH_METHOD, VT_BOOL, (void*)&bRetVal, parms,
		&HelpFile, &HelpID);
	return bRetVal;
}


/////////////////////////////////////////////////////////////////////////////
// CMapXLegend properties

BOOL CMapXLegend::GetCompact()
{
	BOOL result;
	GetProperty(0x1, VT_BOOL, (void*)&result);
	return result;
}

void CMapXLegend::SetCompact(BOOL propVal)
{
	SetProperty(0x1, VT_BOOL, propVal);
}

BOOL CMapXLegend::GetVisible()
{
	BOOL result;
	GetProperty(0x2, VT_BOOL, (void*)&result);
	return result;
}

void CMapXLegend::SetVisible(BOOL propVal)
{
	SetProperty(0x2, VT_BOOL, propVal);
}

CMapXStyle CMapXLegend::GetTitleStyle()

⌨️ 快捷键说明

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