메뉴 건너뛰기

조회 수 7754 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

ActiveX를 만들때 javascript에서 ActiveX 객체의 메서드를 호출하고, 그 결과값을 받아오는 것과, ActiveX 객체에서 발생하는 이벤트를 javascript 에서 캡쳐하는 식의 코딩은 아주 많이 사용된다.

 

Java Applet에서 UI를 만들어서 모든 처리를 할 수도 있겠지만, Applet 자체에는 UI가 없이 html 의 UI를 사용해서 Applet에 값을 던져주고 받고 하는 식의 처리를 할 필요가 있다.

 

javascript에서 호출할 Applet 메서드는 간단히 public으로 메서드를 선언해주면 되고, Applet에서 javascript의 메서드를 호출해주는 것은 AppletContext 객체의 showDocument 메서드를 이용하면 된다.

 

1. test.html은 다음과 같이 준비한다. ( applet 태그에 mayscript 를 기입해주는 이유는 애플릿에서 웹페이지의 자바스크립트 객체를 사용할 수 있도록 허용해줌을 의미 )

<html>

<title>애플릿테스트</title>

<head>

<script type="text/javascript" src="jquery-1.5.2.min.js"></script>
<script type="text/javascript">

 function callFunc( param ) {

  $('#callResult_Event').text( s );

}


 $(function() {
  
  $('#btnResult').click(function() {

   $('#callResult_Return').text( document.myApplet.plusData( $('#firstParam').val() , $('#secondParam').val() ) );  
  });

});


</script>

</head>

<body>

<applet code="TestApplet.class" name="appletObject" width=0 height=0 mayscript>

</applet>

<input type="text" id="firstParam"> 연산 <input type="text" id="secondParam">
<input type="button" value="결과" id="btnResult"><br>
리턴결과(더하기) : <div id="callResult_Return"></div><br>
이벤트결과(곱하기) : <div id="callResult_Event"></div>
</body>

</html>

 

2. 이클립스로 Java 프로젝트를 하나 생성하여 Applet으로부터 상속받는 클래스 TestApplet 를 만든다.

 

public class TestApplet extends Applet {

 

public String plusData( String firstParam, String secondParam ) {

Integer result = Integer.parseInt(firstParam) + Integer.parseInt(secondParam);

Integer result2 = Integer.parseInt(firstParam) * Integer.parseInt(secondParam);

 

try {

getAppletContext().showDocument( new URL("javascript:callFunc(\"" + result2.toString() + "\")"));

} catch( MalformedURLException e ) {

// 예외처리

}

 

return result.toString();

}

}

 

3. 컴파일하여 TestApplet.class를 test.html 파일과 동일한 경로에 넣은 후 test.html 파일을 브라우져로 열어보면 결과를 확인할 수가 있다.

 

4. 즉, btnResult 버튼을 클릭하면, TestApplet 객체인 myApplet 객체의 plusData 메서드를 호출하고 그 결과를 String으로 받아서 callResult_Return의 값으로 설정하고,

 

5. plusData 함수 내부에서 AppletContext 객체의 showDocument 메서드를 호출하여 callFunc 이라는 javascript 함수를 호출하는 구조이다.


  1. 폰갭(PhoneGap) & jQuery Mobile 로 안드로이드 어플 개발

  2. 안드로이드스택(Android Stack) 확인

  3. 문자를 음성으로 변환(TTS)에 대해 알아보자

  4. 안드로이드 스튜디오 - 줄번호 표시하기

  5. No Image 29Jun
    by 조쉬
    2015/06/29 Views 7754 

    Java Applet과 javascript와의 통신

  6. HTML5 드래그 앤 드롭 하기 Drag and Drop

  7. No Image 26May
    by
    2016/05/26 Views 7741 

    Android 와 JSP 간 파라미터 암복호화 (2)

  8. 암시적 인텐트를 사용한 인터넷열기, 전화걸기, 문자보내기 [Intent (인텐트)]

  9. 안드로이드 EditText 필터링 검색

  10. [안드로이드] 화면추가 버튼 리스너

  11. Activity Data Transfor/ 액티비티 이동간에 데이터 전송하기

  12. 안드로이드 스튜디오 - rendering problem 해결법

  13. No Image 16Jul
    by
    2015/07/16 Views 7658 

    이미지의 Orientation를 체크해서 이미지 회전하기

  14. No Image 10Jun
    by
    2016/06/10 Views 7651 

    버튼(Button) 패딩 제거

  15. [Android 2.3] spinner

  16. No Image 07Jun
    by
    2016/06/07 Views 7626 

    Intent (인텐트)

  17. No Image 26Jul
    by
    2015/07/26 Views 7576 

    안드로이드 로딩화면 샘플

  18. No Image 11Aug
    by
    2015/08/11 Views 7576 

    manifest 의 launchMode 속성

  19. 안드로이드 webview (웹뷰) 개발 #4 - 멀티터치 ( 확대 / 축소 ) 적용

  20. No Image 16Jul
    by
    2015/07/16 Views 7478 

    ListView 사용시 특정 뷰로 생성 ( 그림 + 텍스트 )

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved