<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ITberre &#187; 액션스크립트</title>
	<atom:link href="http://blog.saberre.kr/tag/%ec%95%a1%ec%85%98%ec%8a%a4%ed%81%ac%eb%a6%bd%ed%8a%b8/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.saberre.kr</link>
	<description>One of IT blogs in the world</description>
	<lastBuildDate>Fri, 27 Aug 2010 14:41:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>About ContextMenu in AS3.0 &#8211; 3</title>
		<link>http://blog.saberre.kr/311/</link>
		<comments>http://blog.saberre.kr/311/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 20:09:27 +0000</pubDate>
		<dc:creator>Saberre</dc:creator>
				<category><![CDATA[AS3.0]]></category>
		<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Actionscript 3.0]]></category>
		<category><![CDATA[ContextMenu]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[액션스크립트]]></category>
		<category><![CDATA[플래시]]></category>

		<guid isPermaLink="false">http://blog.saberre.kr/?p=311</guid>
		<description><![CDATA[3부에서는 지난 번에 이어서 그래픽 객체 별로 다른 메뉴를 띄워보는 것을 해보겠습니다. 우선 예제와 소스코드를 구경해보세요. 오늘 예제는 fla 파일도 첨부하니 다운받아서 보셔도 좋습니다. 클릭하면 크게 볼 수 있습니다. 2부와 소스코드가 다를 게 없어보이지만&#8230;;;; 오늘 중점적으로 설명할 것은 20~22줄 입니다. ContextMenu 를 Attach 하는 부분이 세 곳이나 되죠? contextMenu 속성을 가진 객체라면 무엇이든 커스텀 메뉴를 [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.saberre.kr%2F311%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.saberre.kr%2F311%2F&amp;source=Saberre&amp;style=normal&amp;service=bit.ly&amp;service_api=saberre%3AR_48acd033e334cfef52e5407d214858a2" height="61" width="50" /><br />
			</a>
		</div>
<p>3부에서는 지난 번에 이어서 그래픽 객체 별로 다른 메뉴를 띄워보는 것을 해보겠습니다. 우선 예제와 소스코드를 구경해보세요. 오늘 예제는 fla 파일도 첨부하니 다운받아서 보셔도 좋습니다.</p>
<p style="text-align: center;"><object width="200" height="100" data="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial3.swf" type="application/x-shockwave-flash"><param name="src" value="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial3.swf" /></object></p>
<div class="mceTemp mceIEcenter">
<dl id="attachment_315" class="wp-caption aligncenter" style="width: 310px;">
<dt class="wp-caption-dt"><a href="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial3.png" rel="shadowbox[post-311];player=img;" title="ContextMenu Tutorial 3"><img class="size-medium wp-image-315" title="ContextMenu Tutorial 3" src="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial3-300x262.png" alt="ContextMenu Tutorial 3" width="300" height="262" /></a></dt>
<dd class="wp-caption-dd">클릭하면 크게 볼 수 있습니다.</dd>
</dl>
</div>
<p><span id="more-311"></span></p>
<p style="text-align: center;"><a href="http://blog.saberre.kr/download/contextmenututorial3.fla" title="Download ContextMenu Tutorial 3 Example FLA File (1 MB)"><img src="http://blog.saberre.kr/wp-content/plugins/download-monitor/img/download.gif" /> <br />ContextMenu Tutorial 3 Example FLA File (1 MB)</a></p>
<p>2부와 소스코드가 다를 게 없어보이지만&#8230;;;;</p>
<p>오늘 중점적으로 설명할 것은 20~22줄 입니다.</p>
<p>ContextMenu 를 Attach 하는 부분이 세 곳이나 되죠?</p>
<p>contextMenu 속성을 가진 객체라면 무엇이든 커스텀 메뉴를 작성할 수 있습니다. 그런데 contextMenu 는 어떤 객체가 가지고 있을까요? Adobe 도움말을 보면 InteractiveObject 라는 클래스에 contextMenu 속성이 정의되어 있습니다.</p>
<p>InteractiveObject 클래스는 사용자가 마우스와 키보드를 사용하여 상호 작용할 수 있는 모든 표시 객체의 추상 기본 클래스입니다.</p>
<p>라고 Adobe 도움말에 나와있습니다. 거의 모든 객체가 해당된다고 보시면 될겁니다. 즉, 커스텀 메뉴는 거의 모든 객체에 작성할 수 있다는 뜻이지요! 와우!</p>
<p>제가 예제에 넣어둔 버튼과 체크박스도 모두 InteractiveObject 클래스를 상속하기 때문에 커스텀 메뉴를 작성할 수 있었습니다. 이 외에도 Sprite, TextField, MovieClip 등이 InteractiveObject 클래스를 상속합니다.</p>
<p>이번 강좌는 매우 짧은데 오른쪽 메뉴 컨트롤이 필요한 부분이라면 어디서든지 이용할 수 있다는 것을 알려드리는 정말 중요한 강좌라고 생각됩니다.</p>
<p>특히 RPG 게임 같은 경우에도 오른쪽 버튼 메뉴가 자주 쓰이는데 플래시로 RPG 게임을 만들 시에 유용하게 쓰일 수 있을 것입니다.</p>
<p>ContextMenu 강좌는 여기까지구요. 다음에 다른 강좌로 찾아뵙겠습니다 ^^</p>
<p>1부 바로가기: <a href="http://blog.saberre.kr/265/">http://blog.saberre.kr/265/</a><br />
2부 바로가기: <a href="http://blog.saberre.kr/296/">http://blog.saberre.kr/296/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.saberre.kr/311/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>About ContextMenu in AS3.0 &#8211; 2</title>
		<link>http://blog.saberre.kr/296/</link>
		<comments>http://blog.saberre.kr/296/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 19:24:49 +0000</pubDate>
		<dc:creator>Saberre</dc:creator>
				<category><![CDATA[AS3.0]]></category>
		<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Actionscript 3.0]]></category>
		<category><![CDATA[ContextMenu]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[액션스크립트]]></category>
		<category><![CDATA[플래시]]></category>

		<guid isPermaLink="false">http://blog.saberre.kr/?p=296</guid>
		<description><![CDATA[안녕하세요 ^^ 2부에서는 ContextMenu 를 활용해보도록 하겠습니다. 오늘은 제가 예제로 만든 소스코드를 보고 한 줄마다 설명해드리도록 하겠습니다. 길어보이지만 별거 아닌 소스입니다. 위 소스코드를 실행해보면 아래와 같은 예제가 나옵니다. 아주 심플한 기능만을 수행합니다. 자 이제 한 줄 한 줄 살펴볼텐데요. 1부에 설명했던 코드는 그냥 넘어가도록 하겠습니다. 1부를 읽지 않으신 분은 먼저 읽어주세요. 1부 바로가기: http://blog.saberre.kr/265/ 7번째 [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.saberre.kr%2F296%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.saberre.kr%2F296%2F&amp;source=Saberre&amp;style=normal&amp;service=bit.ly&amp;service_api=saberre%3AR_48acd033e334cfef52e5407d214858a2" height="61" width="50" /><br />
			</a>
		</div>
<p>안녕하세요 ^^ 2부에서는 ContextMenu 를 활용해보도록 하겠습니다.</p>
<p>오늘은 제가 예제로 만든 소스코드를 보고 한 줄마다 설명해드리도록 하겠습니다.</p>
<div id="attachment_297" class="wp-caption aligncenter" style="width: 310px"><a href="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial2.png" rel="shadowbox[post-296];player=img;" title="ContextMenu Tutorial2"><img class="size-medium wp-image-297" title="ContextMenu Tutorial2" src="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial2-300x147.png" alt="ContextMenu Tutorial2" width="300" height="147" /></a><p class="wp-caption-text">클릭하면 크게 볼 수 있습니다.</p></div>
<p>길어보이지만 별거 아닌 소스입니다. 위 소스코드를 실행해보면 아래와 같은 예제가 나옵니다.</p>
<p style="text-align: center;"><a href="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial2.swf" rel="shadowbox[post-296];width=640;height=385;"><object width="100" height="100" data="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial2.swf" type="application/x-shockwave-flash"><param name="src" value="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial2.swf" /></object></a></p>
<p>아주 심플한 기능만을 수행합니다. 자 이제 한 줄 한 줄 살펴볼텐데요. 1부에 설명했던 코드는 그냥 넘어가도록 하겠습니다. 1부를 읽지 않으신 분은 먼저 읽어주세요.</p>
<p>1부 바로가기: <a href="http://blog.saberre.kr/265/">http://blog.saberre.kr/265/</a> <span id="more-296"></span></p>
<p>7번째 줄을 먼저 살펴봅시다.</p>
<pre lang="actionscript3">cmi.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, test_select);</pre>
<p>이게 무엇을 뜻할까요? 아마도 &#8220;구분선 만들기&#8221; 메뉴 아이템에 대한 것 같은데&#8230;&#8230;.</p>
<p>addEventListener 메소드는 아시죠? 어떤 이벤트가 발생했을 때 어떤 함수가 실행되도록 하라고 이벤트 처리 목록에 추가하는 메소드입니다.</p>
<p>새로 등장한 ContextMenuEvent와 MENU_ITEM_SELECT 에 대해서 살펴봅시다.</p>
<p>메뉴 아이템을 클릭하면 menuItemSelect 이벤트가 발생하는데요. 이 이벤트에 대해서 살펴봅시다.</p>
<p><span style="font-size: medium;"><strong>menuItemSelect</strong> 이벤트<br />
</span>속성 ContextMenuEvent.type = flash.events.ContextMenuEvent.MENU_ITEM_SELECT<br />
사용자가 컨텍스트 메뉴에서 항목을 선택할 때 전달됩니다. 사용자는 포인팅 장치의 보조 버튼을 클릭하여 컨텍스트 메뉴를 생성합니다.<br />
Ref: <a href="http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/ui/ContextMenuItem.html#event:menuItemSelect">http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/ui/ContextMenuItem.html#event:menuItemSelect</a></p>
<p><span style="font-size: medium;"><strong>MENU_ITEM_SELECT</strong> 상수<br />
</span>public static const MENU_ITEM_SELECT:String = &#8220;menuItemSelect&#8221;<br />
Ref: <a href="http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/events/ContextMenuEvent.html#MENU_ITEM_SELECT">http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/events/ContextMenuEvent.html#MENU_ITEM_SELECT</a></p>
<p>따라서 우리가 위처럼 addEventListener 메서드를 통해서 메뉴 아이템이 선택되었을 때 menuItemSelect 이벤트가 발생하는 것을 감지하여 함수가 실행될 수 있도록 하는 것입니다.</p>
<p>따라서 어떤 메뉴 아이템이 선택되었을 때 함수가 실행되도록 하려면</p>
<pre lang="actionscript3">(ContextMenuItem 객체).addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, (Function 객체));</pre>
<p>위 처럼 코드를 작성하면 됩니다.</p>
<p>11~19줄은 이벤트가 발생하였을 때 실행되는 함수입니다.</p>
<p>11줄에서 함수에 꼭! 이벤트를 받는 매개 변수를 넣어주셔야 합니다. 들어오는 이벤트 객체는 ContextMenuEvent 이니 매개 변수로 받아주시면 됩니다.</p>
<p>12줄에서 if 안에 조건문에 들어있는 separatorBefore 속성. 어디서 많이 보지 않으셨나요? (못보셨다면 1부에서 ContextMenuItem 생성자 부분을 참조하세요)</p>
<p>네, 바로 구분선을 추가할지 말지 결정하는 속성입니다. 이 속성에 대해서 Adobe 도움말을 살펴봅시다.</p>
<p><span style="font-size: medium;"><strong>separatorBefore</strong> 속성<br />
</span>separatorBefore:Boolean<br />
지정된 메뉴 항목 위에 구분 표시줄을 표시할지 여부를 나타냅니다. 기본값은 false 입니다.<br />
Ref: <a href="http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/ui/ContextMenuItem.html#separatorBefore">http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/ui/ContextMenuItem.html#separatorBefore</a></p>
<p>그리고 14줄에는 caption 이라는 속성도 보입니다. 역시 Adobe 도움말을 살펴봅시다.</p>
<p><span style="font-size: medium;"><strong>caption</strong> 속성<br />
</span>caption:String<br />
컨텍스트 메뉴에 표시될 메뉴 항목 캡션 텍스트를 지정합니다. caption 값에 대한 제한 사항은 ContextMenuItem 클래스 개요를 참조하십시오.<br />
Ref: <a href="http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/ui/ContextMenuItem.html#caption">http://help.adobe.com/ko_KR/AS3LCR/Flash_10.0/flash/ui/ContextMenuItem.html#caption</a></p>
<p>바로 메뉴에 보여질 메뉴 아이템의 캡션 텍스트를 가지고 있는 속성입니다. 이를 수정하면 메뉴를 바꿀 수 있습니다.</p>
<p>이제 소스 코드 이해가 다 되셨나요?</p>
<p>어&#8230; 아직 안되셨다구요? 어디가요?</p>
<p>이미 메뉴 아이템은 ContextMenu 에 포함되었고 ContextMenu 는 메인에 Attach 되었는데 수정해도 되냐구요?</p>
<p>물론 됩니다! 우리가 push 를 통해서 ContextMenuItem 객체를 포함시켰는데 이는 객체를 복사해서 넣는 것이 아니라 단지 &#8216;연결&#8217; 시키는 것 뿐입니다. 따라서 연결된 ContextMenuItem 객체를 편집해도 수정된 내용이 실시간으로 반영됩니다.</p>
<p>그리고 ContextMenu 객체 역시 메인에 연결시킨 것이기 때문에 수정해도 실시간으로 반영됩니다.</p>
<p>이해가 되셨나요?</p>
<p>3부에서는 객체별로 다른 ContextMenu 를 띄워보도록 하겠습니다.</p>
<p>3부 바로가기: <a href="http://blog.saberre.kr/311/">http://blog.saberre.kr/311/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.saberre.kr/296/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>About ContextMenu in AS3.0 &#8211; 1</title>
		<link>http://blog.saberre.kr/265/</link>
		<comments>http://blog.saberre.kr/265/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 14:41:54 +0000</pubDate>
		<dc:creator>Saberre</dc:creator>
				<category><![CDATA[AS3.0]]></category>
		<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[Actionscript 3.0]]></category>
		<category><![CDATA[ContextMenu]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[액션스크립트]]></category>
		<category><![CDATA[플래시]]></category>

		<guid isPermaLink="false">http://blog.saberre.kr/?p=265</guid>
		<description><![CDATA[(이 강의는 필자가 오른쪽 커스텀 메뉴 관련 강의를 찾던 중 도저히 찾을 수 없어서 레퍼런스, 도움말 뒤져가면서 알아낸 정보를 바탕으로 이루어졌습니다. 부디 이 강의가 도움이 되길 바랍니다.) 안녕하세요 ^^ 제가 알려드리고 싶은 내용은 AS3.0 에서 ContextMenu 를 다뤄보자는 것입니다. 아마도 빠진 내용이 많을텐데 댓글로 태클 감사히 받겠습니다. 우선 Adobe 도움말에 나온 ContextMenu 에 대한 설명부터 [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.saberre.kr%2F265%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.saberre.kr%2F265%2F&amp;source=Saberre&amp;style=normal&amp;service=bit.ly&amp;service_api=saberre%3AR_48acd033e334cfef52e5407d214858a2" height="61" width="50" /><br />
			</a>
		</div>
<p><span style="font-family: 굴림;">(이 강의는 필자가 오른쪽 커스텀 메뉴 관련 강의를 찾던 중 도저히 찾을 수 없어서 레퍼런스, 도움말 뒤져가면서 알아낸 정보를 바탕으로 이루어졌습니다. 부디 이 강의가 도움이 되길 바랍니다.)</span> <span style="font-family: 굴림;">안녕하세요 ^^</span> <span style="font-family: 굴림;">제가 알려드리고 싶은 내용은 AS3.0 에서 ContextMenu 를 다뤄보자는 것입니다. 아마도 빠진 내용이 많을텐데 댓글로 태클 감사히 받겠습니다.</span> <span style="font-family: 굴림;">우선 Adobe 도움말에 나온 ContextMenu 에 대한 설명부터 볼까요?</span> <span style="font-size: 12pt; font-family: 2186745_12;"><strong> </strong></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><strong><span style="font-family: 굴림;">ContextMenu </span></strong></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">ContextMenu 클래스를 통해 Flash Player 컨텍스트 메뉴의 항목을 제어할 수 있습니다. 사용자가 Flash Player에서 마우스 오른쪽 버튼을 클릭하거나(Windows) Control 키를 누른 상태에서 클릭하면(Macintosh) 컨텍스트 메뉴가 열립니다. ContextMenu 클래스의 메서드 및 속성을 사용하여 사용자 정의 메뉴 항목을 추가하고 내장 컨텍스트 메뉴 항목(예: 확대 및 인쇄)의 표시 방법을 제어하거나 메뉴의 복사본을 만들 수 있습니다. </span></span></span><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">Ref: <a href="http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenu.html" target="_blank"><span style="font-family: 굴림;">http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenu.html</span></a></span></span></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">뭔 소리인지 모르겠지요? 이제부터 쉽게 알아봅시다.</span></span></span><span id="more-265"></span> <span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">ContextMenu 란 플래시에서 오른쪽 버튼을 누르면 나타나는 메뉴를 뜻합니다. 이 메뉴를 편집하여 다양하게 활용할 수 있는데요.(아쉽게도 설정과 Adobe Flash Player XX 정보 는 지울 수 없습니다.)</span></span></span> <span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">우선 ContextMenu 를 생성하는 방법부터 살펴봅시다.</span></span></span><br />
[as3]var cm:ContextMenu = new ContextMenu();[/as3]<br />
<span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">cm 이라는 ContextMenu 형식의 변수를 만들고 새로운 ContextMenu 개체를 생성합니다. 생성 시에 따로 들어가는 인수는 없습니다.</span></span></span> <span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 9pt; font-family: 굴림;">그러면 기존에 있던 메뉴는 어떻게 삭제할까요? 아주 쉬운 메서드가 하나 존재합니다. 바로 hideBuiltInItems 인데요. Adobe 도움말을 살펴봅시다.</span></span></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><strong><span style="font-size: 12pt; font-family: 굴림;">hideBuiltInItems() 메서드 </span></strong></span></span></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><strong> </strong></span></span></span><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 굴림;">public function hideBuiltInItems():void </span></span></span></span></p>
<p><span style="font-size: 9pt; font-family: 굴림;">지정된 ContextMenu 객체에서 [설정]을 제외한 모든 내장 메뉴 항목을 숨깁니다. 디버거 버전의 Flash Player를 실행하는 경우에는 [디버깅] 메뉴 항목이 표시됩니다. SWF 파일에서 원격 디버깅을 사용하지 않는 경우에는 이 항목이 흐리게 표시됩니다. </span></p>
<p><span style="font-size: 9pt; font-family: 굴림;">Ref: </span><a href="http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenu.html#hideBuiltInItems()" target="_blank"><span style="font-size: 9pt; font-family: 굴림;">http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenu.html#hideBuiltInItems()</span></a></p>
<p><span style="font-family: 굴림;">기본 내장 메뉴 항목을 숨기는 아주 편리한 메서드입니다. 사용 방법도 간단합니다.</span><br />
[as3]cm.hideBuiltInItems();[/as3]<br />
<span style="font-family: 굴림;">한 줄로 간단하게 끝납니다.</span> <span style="font-family: 굴림;">자, 필요없는 메뉴를 지웠으니 이제 나만의 메뉴를 추가해야겠죠?</span> <span style="font-family: 굴림;">그런데 한 가지 더 알아야 할 것이 있습니다. 바로 ContextMenuItem 인데요. Adobe 도움말을 또 살펴봅시다.</span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><strong><span style="font-family: 굴림;">ContextMenuItem </span></strong></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><strong></strong></span><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 굴림;">ContextMenuItem 클래스를 사용하면 Flash Player 컨텍스트 메뉴에 표시할 사용자 정의 메뉴 항목을 만들 수 있습니다. 각 ContextMenuItem 객체에는 컨텍스트 메뉴에 표시되는 텍스트 캡션이 있습니다. 컨텍스트 메뉴에 새 항목을 추가하려면 이를 ContextMenu 객체의 customItems 배열에 추가합니다.</span></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 굴림;"> </span></span><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 굴림;">Ref: <a href="http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenuItem.html" target="_blank"><span style="font-family: 굴림;">http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenuItem.html</span></a></span></span></p>
<p><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 굴림;">앗, 그런데 여기에 몇 가지 제한이 있군요!</span></span></p>
<ul>
<li style="font-size: 9pt; font-family: 굴림;"><span><span>컨텍스트 메뉴에 사용자 정의 항목을 15개까지 추가할 수 있습니다.</span></span><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 2186745_9;"> </span></span></li>
<li style="font-size: 9pt; font-family: 굴림;">각 캡션에는 표시 가능한 문자가 하나 이상 있어야 합니다.</li>
<li style="font-size: 9pt; font-family: 굴림;">제어 문자, 개행 문자 및 기타 공백 문자는 무시됩니다.</li>
<li style="font-size: 9pt; font-family: 굴림;">캡션에는 최대 100자까지만 입력할 수 있습니다.</li>
<li style="font-size: 9pt; font-family: 굴림;">내장 메뉴 항목 또는 다른 사용자 정의 항목과 동일한 캡션은 일치하는 항목의 표시 여부와 관계없이 무시됩니다. 메뉴 캡션은 대/소문자, 문장 부호 또는 공백을 고려하지 않고 내장 캡션 또는 기존의 사용자 정의 캡션과 비교됩니다.</li>
<li style="font-size: 9pt; font-family: 굴림;">다음 캡션은 개별적으로 사용할 수 없지만 다른 단어와 결합하여 사용자 정의 캡션을 구성할 수는 있습니다. 예를 들어 &#8220;Paste&#8221;는 사용할 수 없지만 &#8220;Paste tastes great&#8221;는 사용할 수 있습니다.
<ul>
<li style="font-size: 9pt; font-family: 굴림;">(위의 ContextMenuItem 도움말 링크 참조)</li>
</ul>
</li>
<li style="font-size: 9pt; font-family: 굴림;">다음 단어는 사용자 정의 캡션에 단독으로 사용할 수 없을 뿐만 아니라 다른 단어와 결합하여 사용할 수도 없습니다.
<ul>
<li style="font-size: 9pt; font-family: 굴림;">(역시 참조)</li>
</ul>
</li>
</ul>
<p><span style="font-family: 굴림;">꽤 제한이 많군요..;;</span> <span style="font-family: 굴림;">그러면 이 개체는 어떻게 생성할까요?</span><br />
[as3]var cmi:ContextMenuItem = new ContextMenuItem(caption:String, separatorBefore:Boolean = false, enabled:Boolean = true, visible:Boolean = true);[/as3]<br />
<span style="font-family: 굴림;">생성자에 들어가는 매개 변수를 하나하나 살펴봅시다.</span></p>
<ul>
<li style="font-size: 9pt; font-family: 굴림;">caption: 문자열 값을 넣어줍니다. 메뉴 항목에 연결된 텍스트를 지정합니다. caption 값에 대한 제한 사항은 ContextMenuItem 클래스 개요를 참조하십시오.</li>
<li style="font-size: 9pt; font-family: 굴림;">separatorBefore (기본값 false): 부울 값을 넣어줍니다. 컨텍스트 메뉴에서 메뉴 항목 위에 구분 표시줄을 표시할지 여부를 지정합니다. 기본값은 false입니다.</li>
<li style="font-size: 9pt; font-family: 굴림;">enabled (기본값 true): 부울 값을 넣어줍니다. 컨텍스트 메뉴에서 메뉴 항목의 활성화 여부를 지정합니다. 기본값은 메뉴 항목을 활성화하는 true입니다. 이 매개 변수는 선택적입니다.</li>
<li style="font-size: 9pt; font-family: 굴림;">visible (기본값 true): 부울 값을 넣어줍니다. 메뉴 항목의 표시 여부를 지정합니다. 기본값은 메뉴 항목을 표시하는 true입니다.</li>
</ul>
<p><span style="font-family: 굴림;">이 중에서 caption 만 필수로 넣어주면 되구요, 나머지 세 매개 변수는 필요에 따라서 사용해주시면 됩니다. 물론 여기서 설정하는 네 개의 매개 변수는 나중에 바꿀 수도 있습니다.</span> <span style="font-family: 굴림;">예를 들어서 ContextMenuItem 객체를 생성해보겠습니다. &#8220;Shift&#8221; 라는 메뉴 아이템을 만들고 싶다면</span><br />
[as3]var cmi:ContextMenuItem = new ContextMenuItem(&#8220;Shift&#8221;);[/as3]<br />
<span style="font-family: 굴림;">위와 같이 해주면 되구요. 메뉴 아이템을 두개 이상 만들 때 Shift 위에 구분선을 두고 싶다면</span><br />
[as3]var cmi:ContextMenuItem = new ContextMenuItem(&#8220;Shift&#8221;, true);[/as3]<br />
<span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 굴림;">위와 같이 해주면 됩니다. 대신 구분선을 넣을 아이템은 최소한 두번째 또는 그 아래에 위치해야 구분선이 나타나니 순서에 주의하시기 바랍니다.</span></span> <span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 굴림;">그러면 이렇게 만든 아이템을 ContextMenu 에 포함시켜 보겠습니다. (ContextMenu 가 ContextMenuItem 들을 포함합니다)</span></span> <span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 굴림;">여기서 필요한 ContextMenu의 속성이 customItems 입니다.</span></span> <span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><strong></strong></span></span></span></p>
<p><span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><strong><span style="font-family: 굴림;">customItems 속성 </span></strong></span></span></span></p>
<p><span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 굴림;">customItems: Array(배열)</span></span></span></span></p>
<p><span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 9pt; font-family: 굴림;">ContextMenuItem 객체의 배열입니다. 배열 내의 각 객체는 사용자가 정의한 컨텍스트 메뉴 항목을 나타냅니다. 이 속성을 사용하여 사용자 정의 메뉴 항목을 추가, 삭제 또는 수정할 수 있습니다. </span></span></span></span></p>
<p><span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">Ref: <a href="http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenu.html#customItems" target="_blank"><span style="font-family: 굴림;">http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/ui/ContextMenu.html#customItems</span></a></span></span></span></span></span></p>
<p><span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">그러면 이제 포함시켜 보겠습니다.</span></span></span></span></span><br />
[as3]cm.customItems.push(cmi);[/as3]<br />
<span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">정말 간단하죠? 다들 잘 알고있는 push 메서드를 이용해서 배열에 추가해주기만 하면 됩니다. 여러 개를 추가하고 싶다면</span></span></span></span></span><br />
[as3]cm.customItems.push(cmi,cmi2,&#8230;);[/as3]<br />
<span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">인수를 쭉 늘려주시면 됩니다.</span></span></span></span></span> <span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">이제 ContextMenu 객체에 메뉴 아이템을 추가했습니다. 그런데 이 상태에서 Ctrl+Enter 를 눌러서 무비를 실행하더라도 메뉴는 그대로죠?</span></span></span></span></span> <span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">우리가 만든 ContextMenu 를 무비에 Attach 해야하는 데 그 작업을 하지 않았기 때문입니다.</span></span></span></span></span> <span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">Attach 하는 방법은 간단합니다.</span></span></span></span></span><br />
[as3]this.contextMenu = cm;[/as3]<br />
<span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;">정말 쉽죠? 아래에 예제와 예제에 사용된 소스코드를 첨부하였습니다. 참고하시기 바랍니다. 예제에 아무 그래픽이 없어서 그냥 하얀 배경밖에 없는데 아래 빈 공간 잘 클릭해보시면 메뉴 뜰겁니다.. ^^</span></span></span></span></span></p>
<p style="text-align: center;"><span style="font-family: Verdana;"><span style="font-size: 9pt; font-family: 2186745_9;"><span style="font-size: 12pt; font-family: 2186745_12;"><span style="font-size: 10pt; font-family: 2186745_10;"><span style="font-size: 9pt; font-family: 굴림;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="183" height="154" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="data" value="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial1.swf" /><param name="src" value="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial1.swf" /><embed type="application/x-shockwave-flash" width="183" height="154" src="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial1.swf" data="http://blog.saberre.kr/wp-content/uploads/2009/01/contextmenututorial1.swf"></embed></object></span></span></span></span></span><br />
[as3]var cm:ContextMenu = new ContextMenu();<br />
var cmi:ContextMenuItem = new ContextMenuItem(&#8220;Shift&#8221;);<br />
var cmi2:ContextMenuItem = new ContextMenuItem(&#8220;카페&#8221;, true);</p>
<p>cm.hideBuiltInItems();<br />
cm.customItems.push(cmi, cmi2);</p>
<p>this.ContextMenu = cm;[/as3]<br />
<span>1부는 여기까지구요. 2부에서는 메뉴를 클릭했을 때 함수가 실행되게 해보고 여러 가지 응용을 해보겠습니다.</span> 2부 바로가기: <a href="http://blog.saberre.kr/296/">http://blog.saberre.kr/296/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.saberre.kr/265/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
