|
| TalMap SDK Libary Reference |
| HOWTO: TalMapX Control의 UI 개체에 이벤트를 설정하는 방법. |
|
요약
| |
이 문서는 TalMapX Control 에서 제공하는 강력한 UI 에 이벤트를 설정하는 방법을 설명합니다.
TalMapX Control은 UI(User Interface)를 위해서 다양한 개체들을 제공합니다.
TalMapX Control이 제공하는 UI 개체로는 XUIButton, XUICheckBox, XUIImage, XUIImageList, XUIImageText, XUIPanel, UIStatic 등이 있습니다.
사용자는 생성된 개체에 발생하는 이벤트를 이용할 수 있습니다만, 기본적인 이벤트 외에는 사용자 설정에 의해서 발생합니다.
사용자는 이 문서를 통해 손쉽게 UI 개체에 이벤트를 설정하는 방법을 학습할 수 있습니다.
|
|
|
방법
| |
1. TalMapX Control의 Control Manager를 구합니다.
2. Contorl Manager를 통해 UI Manger를 구합니다.
3. UI Manger를 통해 원하는 개체를 생성합니다.
4. 생성된 UI 개체의 AddEventMode 메소드를 통해 원하는 이벤트를 설정합니다.
|
|
|
Example
| |
|
|
<html>
<head>
<script language="javascript">
<!--
// UI 생성
function CreateUI() {
// Step 1. Ctrl Manager 구하기
var ctrlman = m_Map.GetCtrlMan();
// Step 2. UI Manager 구하기
var uiman = ctrlman.GetUIMan();
var ctrlstate = ctrlman.GetControlState();
var dpsize = ctrlstate.GetSizeDP();
var util = m_Map.GetUtility();
var imageman = ctrlman.GetImageMan();
imageman.SetDefaultPath("http://www.talmap.co.kr/tutorial/");
// Step 3. UI 개체 생성
// Menu Button
var btn = uiman.CreateUI_Button(uiman);
btn.SetParent(uiman);
btn.SetUIID(10);
btn.SetCaption("메뉴 버튼");
btn.SetBound(0, dpsize._CY - 72, 72, 72);
btn.SetImageList("image/btn_menu_72.png", 72, 72);
btn.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_LEFT") | util.GetConstToValue("TMUIOBJ_ANCHOR_TOP"));
btn.SetCanFocus(1);
btn.SetCanClick(1);
btn.SetBrush(util.GetConstToValue("BS_SOLID"), util.RGBColor(255, 0, 0), 0);
btn.SetTransparent(util.GetConstToValue("TMUIOBJ_TRANSPARENT_ALL"));
btn.SetData(1);
btn.SetAlpha(70);
// Step 4. AddEventMode 를 이용해 필요한 이벤트 설정
btn.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSEENTER") |
util.GetConstToValue("TMEVENTTYPE_MOUSELEAVE") |
util.GetConstToValue("TMEVENTTYPE_MOUSEDOWN") |
util.GetConstToValue("TMEVENTTYPE_MOUSEMOVE") |
util.GetConstToValue("TMEVENTTYPE_MOUSEUP"));
}
// OnCreate 이벤트에서 테마 관련 Path 설정
function MapEvent_OnCreate(Flag)
{
var ctrl = m_Map.GetCtrlMan();
var mapman = ctrl.GetMapMan();
var thememan = ctrl.GetThemeMan();
var ctrlstate = ctrl.GetControlState();
// Map Data Path 지정
if (mapman.SetDefaultPath("http://localhost/MapData")) {
alert("Map Data Path를 지정하지 못했습니다.");
}
// Theme Path 지정
thememan.SetDefaultPath("http://localhost/Theme");
if (thememan.LoadTheme("TalMap.TMT") != true) {
alert("Theme를 Loading하지 못했습니다.");
}
ctrlstate.SetLevel(4);
ctrlstate.SetZoomScale(0.5);
}
-->
</script>
<script language="javascript" for="m_Map" event="OnCreate(Flag)">
<!--
MapEvent_OnCreate(Flag);
-->
</script>
</head>
<body>
<table>
<tr>
<td>
<OBJECT ID="Map" CLASSID="CLSID:DD9B48AD-EDDC-4D2C-BD68-D1FB4B382024"
codebase='http://localhost/TalMapX_Web.CAB#version=1,0,0,17' width=100% height=80%>
</OBJECT>
</td>
</tr>
</table>
</body>
</html>
|
|
|
|
#include "talmapxctrl1.h"
#include "CXCtrlMan.h"
#include "CXControlState.h"
#include "CXThemeMan.h"
#include "CXMapMan.h"
#include "CXAdminMan.h"
#include "CXUIMan.h"
#include "CXUtility.h"
// UI 생성
void CSampleDlg::OnCreateUI()
{
// Step 1. Ctrl Manager 구하기
CXCtrlMan ctrlman = m_Map.GetCtrlMan();
// Step 2. UI Manager 구하기
CXUIMan uiman = ctrlman.GetUIMan();
CXControlState ctrlstate = ctrlman.GetControlState();
CXSize dpsize = ctrlstate.GetSizeDP();
CXUtility util = m_Map.GetUtility();
CXImageMan imageman = ctrlman.GetImageMan();
imageman.SetDefaultPath("http://www.talmap.co.kr/tutorial/");
// Step 3. UI 객체 생성
CXUIButton btn = uiman.CreateUI_Button(uiman);
btn.SetParent(uiman);
btn.SetCaption("메뉴 버튼");
btn.SetBound(0, dpsize.GetCY() - 72, 72, 72);
btn.SetImageList("image/btn_menu_72.png", 72, 72);
btn.SetAnchor(util.GetConstToValue("TMUIOBJ_ANCHOR_LEFT") | util.GetConstToValue("TMUIOBJ_ANCHOR_TOP"));
btn.SetCanFocus(1);
btn.SetCanClick(1);
btn.SetBrush(util.GetConstToValue("BS_SOLID"), util.RGBColor(255, 0, 0), 0);
btn.SetTransparent(util.GetConstToValue("TMUIOBJ_TRANSPARENT_ALL"));
btn.SetAlpha(70);
// Step 4. AddEventMode 를 이용해 필요한 이벤트 설정
btn.AddEventMode(util.GetConstToValue("TMEVENTTYPE_MOUSEENTER") |
util.GetConstToValue("TMEVENTTYPE_MOUSELEAVE") |
util.GetConstToValue("TMEVENTTYPE_MOUSEDOWN") |
util.GetConstToValue("TMEVENTTYPE_MOUSEMOVE") |
util.GetConstToValue("TMEVENTTYPE_MOUSEUP"));
}
|
|
|
|
See Also
|
|
Map Preview
|
|