À̺¥Æ®

Ç¥½Ã ¹× ÀϺΠÀ§ÁöÆ®(widget)¸¦ ÀÛ¼ºÇϰí ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¸Þ½ÃÁö ·çÇÁ¸¦ ½ÃÀÛÇÑ °æ¿ì ½ÇÁ¦ ÀÛ¾÷Àº ¾îµð¿¡¼­ ¹ß»ýÇմϱî? ´ë±â¿­¿¡¼­ À̺¥Æ®¸¦ Àоî¿Í¼­ À§ÁöÆ®(widget)¿¡ µð½ºÆÐÄ¡ÇÒ ¶§¸¶´Ù ½ÇÁ¦ ÀÛ¾÷ÀÌ ¹ß»ýÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥ ³í¸®ÀÇ ´ëºÎºÐÀº »ç¿ëÀÚ À̺¥Æ®¿¡ ´ëÇÑ ÀÀ´äÀ¸·Î ±¸ÇöµË´Ï´Ù.

ÀÛ¼ºÇÑ À§ÁöÆ®(widget)¿¡ ¸®½º³Ê¸¦ Ãß°¡ÇÏ´Â °ÍÀÌ ±âº» ÆÐÅÏÀ̰í ÀûÀýÇÑ À̺¥Æ®´Â ½ÇÇàÇÒ ¸®½º³Ê Äڵ忡 ¹ß»ýÇÕ´Ï´Ù. ´ÙÀ½ÀÇ °£´ÜÇÑ ¿¹´Â org.eclipse.swt.examples.helloworld.HelloWorld3¿¡¼­ °³ÀÛÇÑ °ÍÀÔ´Ï´Ù.

      Display display = new Display ();
      Shell shell = new Shell (display);
      Label label = new Label (shell, SWT.CENTER);
   ...
shell.addControlListener(new ControlAdapter() {
      public void controlResized(ControlEvent e) {
      label.setBounds (shell.getClientArea ());
      }
   });

¸ðµç À¯ÇüÀÇ ¸®½º³Ê¿¡ ´ëÇØ ¸®½º³Ê(Xyz¸®½º³Ê)¸¦ Á¤ÀÇÇÏ´Â ÀÎÅÍÆäÀ̽º, À̺¥Æ® Á¤º¸(XyzÀ̺¥Æ®)¸¦ Á¦°øÇϴ Ŭ·¡½º, ¸®½º³Ê(Ãß°¡Xyz¸®½º³Ê)¸¦ Ãß°¡ÇÏ´Â API ¸Þ¼Òµå°¡ ÀÖ½À´Ï´Ù.  ¸®½º³Ê ÀÎÅÍÆäÀ̽º¿¡ Á¤ÀÇµÈ ¸Þ¼Òµå°¡ Çϳª ÀÌ»óÀÏ °æ¿ì ¸®½º³Ê ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇϰí, ºó ¸Þ¼Òµå¸¦ Á¦°øÇÏ´Â ¾î´ðÅÍ(Xyz¾î´ðÅÍ)°¡ Á¦°øÇÕ´Ï´Ù. ¸ðµç À̺¥Æ®, ¸®½º³Ê, ¾î´ðÅͰ¡ org.eclipse.swt.events ÆÐŰÁö¿¡ Á¤ÀǵǾî ÀÖ½À´Ï´Ù.

´ÙÀ½ Å×ÀÌºí¿¡¼­´Â »ç¿ëÇÒ ¼ö ÀÖ´Â À̺¥Æ®¿Í À̺¥Æ®¸¦ Áö¿øÇÏ´Â À§ÁöÆ®(widget)¸¦ ¿ä¾àÇÕ´Ï´Ù.

À̺¥Æ® À¯Çü

¼³¸í

À§ÁöÆ®(widget)

Arm

¸Þ´º Ç׸ñ µîÀÇ À§ÁöÆ®(widget)¸¦ ÁغñÇÑ °æ¿ì »ý¼ºµÊ.

MenuItem

Control

Á¦¾î¸¦ À̵¿Çϰųª Å©±â Á¶Á¤ÇÑ °æ¿ì »ý¼ºµÊ.

Control, TableColumn, Tracker

Dispose

ÇÁ·Î±×·¥¿¡ µû¶ó À§ÁöÆ®(widget)¸¦ »èÁ¦Çϰųª »ç¿ëÀÚ°¡ À§ÁöÆ®(widget)¸¦ »èÁ¦ÇÑ °æ¿ì »ý¼ºµÊ.

Widget

Focus

Á¦¾î¿¡¼­ Æ÷Ä¿½º¸¦ °¡Á®¿À°Å³ª ´©¶ôÇÑ °æ¿ì »ý¼ºµÊ.

Control

Help

»ç¿ëÀÚ°¡ À§ÁöÆ®(widget)¿¡ µµ¿ò¸»À» ¿äûÇÑ °æ¿ì(¿¹: F1 Ű ´©¸£±â) »ý¼ºµÊ.

Control, Menu, MenuItem

Key

Á¦¾î¿¡ Űº¸µå Æ÷Ä¿½º°¡ ÀÖÀ» ¶§ »ç¿ëÀÚ°¡ Űº¸µå ۸¦ ´©¸£°Å³ª ÇØÁ¦ÇßÀ» °æ¿ì »ý¼ºµÊ.

Control

Menu

¸Þ´º¸¦ ¼û±â°Å³ª Ç¥½ÃÇÒ °æ¿ì »ý¼ºµÊ.

Menu

Modify

À§ÁöÆ®(widget)ÀÇ ÅØ½ºÆ®¸¦ ¼öÁ¤ÇÑ °æ¿ì »ý¼ºµÊ.

CCombo, Combo, Text, StyledText

Mouse

»ç¿ëÀÚ°¡ Á¦¾î¿¡¼­ ¸¶¿ì½º¸¦ ´©¸£°Å³ª, ÇØÁ¦Çϰųª, µÎ ¹ø Ŭ¸¯ÇÑ °æ¿ì »ý¼ºµÊ.

Control

MouseMove

Á¦¾î¿¡¼­ ¸¶¿ì½º¸¦ À̵¿ÇÏ¸é »ý¼ºµÊ.

Control

MouseTrack

Á¦¾î À§¿¡ ¸¶¿ì½º Ä¿¼­¸¦ ³õ°Å³ª ÀÔ·Â ¶Ç´Â Á¾·áÇÒ °æ¿ì »ý¼ºµÊ.

Control

Paint

Á¦¾î¸¦ ¸®ÆäÀÎÆ®ÇØ¾ß ÇÒ °æ¿ì »ý¼ºµÊ.

Control

Selection

»ç¿ëÀÚ°¡ Á¦¾îÀÇ Ç׸ñÀ» ¼±ÅÃÇÑ °æ¿ì »ý¼ºµÊ.

Button, CCombo, Combo, CoolItem, CTabFolder, List, MenuItem, Sash, Scale, ScrollBar, Slider, StyledText, TabFolder, Table, Table CursorTableColumn, TableTree, Text, ToolItem, Tree

Shell

½©À» ÃÖ¼ÒÈ­, ÃÖ´ëÈ­, Ȱ¼ºÈ­, ºñȰ¼ºÈ­Çϰųª ´ÝÀº °æ¿ì »ý¼ºµÊ.

Shell

Traverse

Ű ÀÔ·ÂÀ» »ç¿ëÇÏ´Â »ç¿ëÀÚ°¡ Á¦¾î¸¦ ¼øÈ¸ÇÒ °æ¿ì »ý¼ºµÊ.

Control

Tree

»ç¿ëÀÚ°¡ Æ®¸®ÀÇ Ç׸ñÀ» È®´ë ¶Ç´Â Ãà¼ÒÇÒ °æ¿ì »ý¼ºµÊ.

Tree, TableTree

Verify

À§ÁöÆ®(widget)ÀÇ ÅØ½ºÆ®¸¦ ¼öÁ¤ÇÒ °æ¿ì »ý¼ºµÊ. ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ÅØ½ºÆ®¸¦ ¼öÁ¤Çϰųª ¼öÁ¤À» ¹æÁöÇÒ ¼ö ÀÖ´Â ±âȸ¸¦ Á¦°øÇÕ´Ï´Ù.

Text, StyledText

À¯ÇüÈ­µÇÁö ¾ÊÀº À̺¥Æ®

À§¿¡¼­ ¼³¸íÇÑ À¯ÇüÈ­µÈ À̺¥Æ® ½Ã½ºÅÛÀº ³·Àº ·¹º§ÀÇ À¯ÇüÈ­µÇÁö ¾ÊÀº À§ÁöÆ®(widget) À̺¥Æ® ¸ÞÄ¿´ÏÁòÀ¸·Î ±¸ÇöµË´Ï´Ù. ÀÌ ¸ÞÄ¿´ÏÁòÀº ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ »ç¿ëÇÏÁö ¾Ê°í SWTÀÌ ±¸ÇöµÈ ³»ºÎ¿¡¼­ »ç¿ëÇÏ°Ô µË´Ï´Ù. ¿©·¯ Workbench ¸¶¹ý»ç ÆäÀÌÁö ±¸Çö¿¡¼­µµ »ç¿ëµË´Ï´Ù.

À¯ÇüÈ­µÇÁö ¾ÊÀº ¸ÞÄ¿´ÏÁòÀº À̺¥Æ® À¯ÇüÀ» ½Äº°ÇÏ´Â »ó¼ö¿¡ µû¶ó ´Ù¸£¸ç ÀÌ »ó¼ö¿Í ÇÔ²² Á¦°øµÇ´Â ÀÏ¹Ý ¸®½º³Ê¸¦ Á¤ÀÇÇÕ´Ï´Ù. ±×·¯¸é ¸®½º³Ê¿¡¼­ "case style" ¸®½º³Ê¸¦ ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ½º´ÏÆê¿¡¼­´Â ÀÏ¹Ý À̺¥Æ® Çڵ鷯¸¦ Á¤ÀÇÇÏ°í ¿©·¯ °³ÀÇ ¸®½º³Ê¸¦ ½©¿¡ Ãß°¡ÇÕ´Ï´Ù.

   Shell shell = new Shell();
   Listener listener = new Listener() {
      public void handleEvent(Event e) {
         switch (e.type) {
            case SWT.Resize:
               System.out.println ("Resize received");
      break;
            case SWT.Paint:
               System.out.println ("Paint received");
      break;
            default:
               System.out.println("Unknown event received");
         }
      }
   };
shell.addListener(SWT.Resize, listener);
shell.addListener(SWT.Paint, listener);

Copyright IBM Corporation and others 2000, 2003.