1 / 45

제 9 장 WMLScript : 객체 (1) 1. 객체의 이해 2. WMLBrowser 라이브러리 3. Lang 라이브러리 4. Console 객체

제 9 장 WMLScript : 객체 (1) 1. 객체의 이해 2. WMLBrowser 라이브러리 3. Lang 라이브러리 4. Console 객체 5. Dialogs 객체 6. WMLScript 예제. 1. 객체의 이해 WMLScript 는 스크립트의 다양한 기능을 켭슐화한 객체들을 제공 한다 . ‘ 미리 패키지화된’ 함수를 WMLScript 객체라고 한다 . WMLScript 객체. 2. WMLBrowser 라이브러리

zandra
Download Presentation

제 9 장 WMLScript : 객체 (1) 1. 객체의 이해 2. WMLBrowser 라이브러리 3. Lang 라이브러리 4. Console 객체

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제 9 장 WMLScript : 객체 (1) 1. 객체의 이해 2. WMLBrowser 라이브러리 3. Lang 라이브러리 4. Console 객체 5. Dialogs 객체 6. WMLScript 예제 제 9 장 WMLScript : 객체 (1)

  2. 1. 객체의 이해 • WMLScript는 스크립트의 다양한 기능을 켭슐화한 객체들을 제공 • 한다. • ‘미리 패키지화된’ 함수를 WMLScript 객체라고 한다. • WMLScript 객체 제 9 장 WMLScript : 객체 (1)

  3. 2. WMLBrowser 라이브러리 • WMLBrowser 객체 메서드들은 WMLScript 프로그램과 WML 문서 • 간에 통신을 할 수 있도록 해준다. • WMLBrowser 객체의 메서드 제 9 장 WMLScript : 객체 (1)

  4. [예제 9-1] getVar(), setVar() 메서드 사용 예 • ▶ ch9-1.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="비밀번호"> • 6 <do type="accept" label="okey"> • 7 <go href="ch9-1.wmls#passf()"> • 8 <setvar name="id" value="sky"/> • 9 </go> • 10 </do> • 11 <p align="center"> • 12 변수 설정</br> • 13 아이디 : $(id) <br/> • 14 비밀번호 : $(ps) <br/> • 15 </p> • 16 </card> • 17 </wml> 제 9 장 WMLScript : 객체 (1)

  5. ▶ ch9-1.wmls 1 extern function passf() 2 { var n_id, n_pass="1234"; 3 n_id=WMLBrowser.getVar("id"); 4 Dialogs.alert("id:"+n_id); 5 WMLBrowser.setVar("ps", n_pass); 6 WMLBrowser.refresh(); 7 } • 예제 9-1의 실행 결과 제 9 장 WMLScript : 객체 (1)

  6. prev() 메서드 • - 현재 카드로 이동해 오기 전에 사용한 WML 카드로 이동하는 기능을 수 • 행한다. • [예제 9-2] WMLBrowser.prev() 메서드 사용 예 • ▶ ch9-2.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="비밀번호 확인"> • 6 <do type="accept" label="okey"> • 7 <go href="ch9-2.wmls#prevf()"/> • 8 </do> 제 9 장 WMLScript : 객체 (1)

  7. 9 <p align="center"> 10 확인<br/> 11 비밀번호:$(ps) </p> 12 </card> 13 </wml> ▶ ch9-2.wmls 1 extern function prevf() 2 { var n_id="sky", n_pass="1234"; 3 4 Dialogs.alert("id:"+n_id) ; 5 Dialogs.alert("password:"+n_pass) ; 6 WMLBrowser.prev() ; 7 } 제 9 장 WMLScript : 객체 (1)

  8. 예제 9-2의 실행 결과 제 9 장 WMLScript : 객체 (1)

  9. 3. Lang 라이브러리 • 데이터 타입 조작 기능, 임의의 수를 발생시키는 기능 등 • Lang 객체의 메서드 제 9 장 WMLScript : 객체 (1)

  10. 제 9 장 WMLScript : 객체 (1)

  11. [예제 9-3] Lang.abort() 메서드 사용 예 • ▶ ch9-3.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3   "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5   <card id="main" title="WMLScript"> • 6    <p align="center"> • 7      <a href="ch9-3.wmls#cal_div(5,0)">calculate</a><br/> • 8      result:$(number)<br/> • 9    </p> • 10 </card> • 11 </wml> 제 9 장 WMLScript : 객체 (1)

  12. ▶ ch9-3.wmls 1 extern function cal_div(a,b) 2 { var c=a/b ; 3    if( b==0) Lang.abort("error : zero not divide"); 4    WMLBrowser.setVar("number",c); 5    WMLBrowser.refresh(); 6 } 제 9 장 WMLScript : 객체 (1)

  13. 예제 9-3의 실행 결과 제 9 장 WMLScript : 객체 (1)

  14. abs() 메서드 • [예제 9-4] Lang.abs() 메서드 사용 예 • ▶ ch9-4.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="ABS()"> • 6 <p align="center"> • 7 <a href="ch9-4.wmls#absf(-15)">calculate</a><br/> • 8 result<br/>-15 ▶ $(number)<br/> • 9 </p> • 10 </card> • 11 </wml> 제 9 장 WMLScript : 객체 (1)

  15. ▶ ch9-4.wmls • 1 extern function absf( n ) • 2 { var r; • 3 r=Lang.abs(n); • 4 WMLBrowser.setVar( "number", r ); • 5 WMLBrowser.refresh(); • 6 } • 예제 9-4의 실행 결과 제 9 장 WMLScript : 객체 (1)

  16. exit()메서드 • [예제 9-5] Lang.exit() 메서드 사용 예 • ▶ ch9-5.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="EXIT()"> • 6 <p align="center"> • 7 <a href="ch9-5.wmls#f_exit()">확 인</a><br/> • 8 결과 : $(num)<br/> • 9 $(msg1) • 10 </p> • 11 </card> • 12 </wml> 제 9 장 WMLScript : 객체 (1)

  17. ▶ ch9-5.wmls 1 extern function f_exit( ) { 2 var a=0, msg2="Now Program Exit"; 3 while( a < 10 ){ 4 ++a; 5 if(a==5) 6 { WMLBrowser.setVar( "msg1", msg2 ); 7 Lang.exit(a); 8 } 9 WMLBrowser.setVar( "num", a ); 10 WMLBrowser.refresh(); 11 } 12 } 제 9 장 WMLScript : 객체 (1)

  18. 예제 9-5의 실행 결과 제 9 장 WMLScript : 객체 (1)

  19. float 메서드 • [예제 9-6] Lang.float() 메서드 사용 예 • ▶ ch9-6.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="FLOAT() 지원여부"> • 6 <p align="center"> • 7 <a href="ch9-6.wmls#f_float()">확 인</a><br/> • 8 O : $(msg1)<br/> • 9 X : $(msg2) • 10 </p> • 11 </card> • 12 </wml> 제 9 장 WMLScript : 객체 (1)

  20. ▶ ch9-6.wmls 1 extern function f_float() { 2 var bool ; 3 if(true==Lang.float()) 4 { bool="true"; 5 WMLBrowser.setVar( "msg1", bool ); 6 WMLBrowser.refresh(); 7 } 8 else 9 { bool="false"; 10 WMLBrowser.setVar( "msg2", bool ); 11 WMLBrowser.refresh(); 12 } 13 } 제 9 장 WMLScript : 객체 (1)

  21. 예제 9-6의 실행 결과 제 9 장 WMLScript : 객체 (1)

  22. isFloat()와 isInt() 메서드 • [예제 9-7] Lang.isfloat()과 isInt() 메서드 사용 예 • ▶ ch9-7.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="변환여부"> • 6 <p align="center"> • 7 <a href="ch9-7.wmls#float_int()">확 인</a><br/> • 8 float 3 ▶ $(m1)<br/> • 9 float GooD ▶ $(m2)<br/> • 10 int 2.17 ▶ $(m3)<br/> • 11 int NO 2003 ▶ $(m4)<br/> • 12 </p> • 13 </card> • 14 </wml> 제 9 장 WMLScript : 객체 (1)

  23. ▶ ch9-7.wmls 1 extern function float_int() { 2 var n1=Lang.isFloat("3"); 3 var n2=Lang.isFloat("GooD"); 4 var n3=Lang.isInt("2.17"); 5 var n4=Lang.isFloat("No 2003"); 6 7 WMLBrowser.setVar( "m1", n1 ); 8 WMLBrowser.setVar( "m2", n2 ); 9 WMLBrowser.setVar( "m3", n3 ); 10 WMLBrowser.setVar( "m4", n4 ); 11 WMLBrowser.refresh(); 12 } 제 9 장 WMLScript : 객체 (1)

  24. 예제 9-7의 실행 결과 제 9 장 WMLScript : 객체 (1)

  25. max()와 min() 메서드 • [예제 9-8] Lang.max(), Lang.min() 메서드 사용 예 • ▶ ch9-8.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="큰값 작은값"> • 6 <p align="center"> • 7 <a href="ch9-8.wmls#maxmin(3,7)">찾기</a> • 8 <br/>max(3,7) : $(max) <br/> • 9 min(3,7) : $(min) <br/> • 10 </p> • 11 </card> • 12 </wml> 제 9 장 WMLScript : 객체 (1)

  26. ▶ ch9-8.wmls 1 extern function maxmin(a,b) 2 { var max, min ; 3 max=Lang.max(a,b); 4 min=Lang.min(a, b); 5 6 WMLBrowser.setVar( "max", max ); 7 WMLBrowser.setVar( "min", min ); 8 WMLBrowser.refresh(); 9 } 제 9 장 WMLScript : 객체 (1)

  27. 예제 9-8의 실행 결과 제 9 장 WMLScript : 객체 (1)

  28. maxInt()와 minInt() 메서드 • [예제 9-9] maxInt()와 minInt( )메서드 사용 예 • ▶ ch9-9.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="최대,최소 정수값"> • 6 <p align="center"> • 7 <a href="ch9-9.wmls#maxmin()">find</a><br/> • 8 최대 정수 : $(max) <br/> • 9 최소 정수 : $(min) <br/> • 10 </p> • 11 </card> • 12 </wml> 제 9 장 WMLScript : 객체 (1)

  29. ▶ ch9-9.wmls 1 extern function maxmin() 2 { var ma, mi; 3 ma=Lang.maxInt(); 4 mi=Lang.minInt(); 5 6 WMLBrowser.setVar( "max", ma ); 7 WMLBrowser.setVar( "min", mi ); 8 WMLBrowser.refresh(); 9 } 제 9 장 WMLScript : 객체 (1)

  30. 예제 9-9의 실행 결과 제 9 장 WMLScript : 객체 (1)

  31. parseFloat()와 parseInt() 메서드 • [예제 9-10] parseFloat()와 parseInt()의 사용 예 • ▶ ch9-10.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="parse()"> • 6 <p align="center"> • 7 <a href="ch9-10.wmls#parsefi()">보 기</a><br/> • 8 나 이 : $(n1) <br/> • 9 키 : $(n2) <br/> • 10 몸무게 : $(n3) <br/> • 11 </p> • 12 </card> • 13 </wml> 제 9 장 WMLScript : 객체 (1)

  32. ▶ ch9-10.wmls 1 extern function parsefi() 2 { var n1, n2, n3; 3 n1=Lang.parseInt('20 age'); 4 n2=Lang.parseFloat('183.4 cm'); 5 n3=Lang.parseFloat('60 Kg'); 6 7 WMLBrowser.setVar( "n1", n1 ); 8 WMLBrowser.setVar( "n2", n2 ); 9 WMLBrowser.setVar( "n3", n3 ); 10 WMLBrowser.refresh(); 11 } 제 9 장 WMLScript : 객체 (1)

  33. 예제 9-10의 실행 결과 제 9 장 WMLScript : 객체 (1)

  34. seed()와 random() 메서드 • [예제 9-11] seed()와 random() 메서드 사용 예 • ▶ ch9-11.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="rand() &amp; seed()" > • 6 <p align="center"> • 7 1과 20 사이의 숫자 생성 • 8 <a href="ch9-11.wmls#rand(6)">NUM</a><br/> • 9 숫자1 : $(num1) <br/> • 10 숫자2 : $(num2) <br/> • 11 </p> • 12 </card> • 13 </wml> 제 9 장 WMLScript : 객체 (1)

  35. ▶ ch9-11.wmls 1 extern function rand(s) 2 { var n1,n2; 3 Lang.seed(s); 4 n1=Lang.random(19)+1; 5 n2=Lang.random(19.5)+1; 6 7 WMLBrowser.setVar( "num1", n1 ); 8 WMLBrowser.setVar( "num2", n2 ); 9 WMLBrowser.refresh(); 10 } 제 9 장 WMLScript : 객체 (1)

  36. 예제 9-11의 실행 결과 제 9 장 WMLScript : 객체 (1)

  37. 4. Console 객체 • 사용자에게 결과를 콘솔에 보여주기 위한 객체이다. • Console 객체의 메서드 • 5. Dialogs 객체 • 사용자와 상호작용을 할 수 있는 메서드를 제공 제 9 장 WMLScript : 객체 (1)

  38. [예제 9-12] Dialogs.alert() 메서드 사용 예 • ▶ ch9-12.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="main" title="Alert"> • 6 <onevent type="onenterforward"> • 7 <refresh><setvar name="a" value="3"/> • 8 <setvar name="b" value="0"/> • 9 </refresh> 제 9 장 WMLScript : 객체 (1)

  39. 10 </onevent> 11 <p align="center">cal을 선택하세요<br/> 12 <a href="ch9-12.wmls#main()">cal</a> 13 <br/> 계산 결과<br/> 14 $(a) + $(b)=$(add)<br/> $(a) / $(b)=$(divi)<br/> 15 </p> 16 </card> 17 </wml> ▶ ch9-12.wmls 1 extern function main( ) 2 { var a=3, b=0 ; 3 Dialogs.alert(“a :” + a + " b :" + b) ; 4 var add=add( a, b ) ; 5 Dialogs.alert("a+b="+add); 6 var divi=divide(a,b); 7 Dialogs.alert("a/b="+divi); 8 WMLBrowser.setVar("a", a); 제 9 장 WMLScript : 객체 (1)

  40. 9 WMLBrowser.setVar("b", b); 10 WMLBrowser.setVar("add", add); 11 WMLBrowser.setVar("divi", divi); 12 WMLBrowser.refresh(); 13 } 14 15 function add(a,b) 16 { Dialogs.alert("now function add() call"); 17 return(a+b); 18 } 19 20 function divide(a,b) 21 { Dialogs.alert("now function divide() call"); 22 if( b==0){ return("not divide"); } 23 else{ return(a/b); } 24 } 제 9 장 WMLScript : 객체 (1)

  41. 예제 9-12의 실행결과 제 9 장 WMLScript : 객체 (1)

  42. 6. WMLScript 예제 • 사칙연산 계산기 • [예제 9-13] 계산기 만들기 • ▶ ch9-13.wml • 1 <?xml version="1.0"?> • 2 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" • 3 "http://wapforum.org/DTD/wml_1.1.xml" > • 4 <wml> • 5 <card id="input" newcontext="true"> • 6 <do type="accept" label="cal"><go href="#select"/></do> • 7 <p align="center"><b> 계산할 숫자 입력</b> • 8 첫번째 수<br/> <input name="a" format="*N"/><br/> • 9 두번째 수 <br/> <input name="b" format="*N"/><br/> • 10 </p> • 11 </card> • 12 제 9 장 WMLScript : 객체 (1)

  43. 13 <card id="select"> 14 <do type="accept" label="cal"><go href="ch9-13.wmls#main()"/></do> 15 <p align="center"><b> operator select ? </b><br/> 16 <select name="op"> 17 <option value="+">add</option> 18 <option value="-">sub</option> 19 <option value="X">mul</option> 20 <option value="/">div</option> 21 </select> 22 </p> 23 </card> 24 25 <card id="view" title="result"> 26 <do type="accept" label="first"> 27 <go href="#input"/> </do> 28 <do type="option" label="other operator"> 29 <prev/> 30 </do> 31 <p align="center"><b> result</b><br/> 32 $(a)$(op)$(b)=<b>$(result)</b><br/> 33 </p> 34 </card> 35 </wml> 제 9 장 WMLScript : 객체 (1)

  44. ▶ ch9-13.wmls 1 extern function main() 2 { var a=WMLBrowser.getVar("a"); 3 var b=WMLBrowser.getVar("b"); 4 var op=WMLBrowser.getVar("op"); 5 6 a=Lang.parseInt(a); 7 b=Lang.parseInt(b); 8 if(op=="+"){ 9 WMLBrowser.setVar("result",a+b); 10 } else if(op=="-"){ 11 WMLBrowser.setVar("result",a-b); 12 } else if(op=="X"){ 13 WMLBrowser.setVar("result",a*b); 14 } else if(op=="/"){ 15 WMLBrowser.setVar("result",a/b); 16 } 17 WMLBrowser.go("ch9-13.wml#view"); 18 } 제 9 장 WMLScript : 객체 (1)

  45. 예제 9-13의 실행 결과 제 9 장 WMLScript : 객체 (1)

More Related