¶§·Î SWT¿¡¼ Á¦°øÇÏ´Â Á¦¾î°¡ ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¿ä±¸¿¡ ¸ÂÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ·± °æ¿ì¿¡´Â °íÀ¯ÇÑ »ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget)¸¦ ±¸ÇöÇÏ¿© SWT¸¦ È®´ëÇÒ ¼ö ÀÖ½À´Ï´Ù. SWT´Â Ç÷§Æû Workbench¸¦ ±¸ÇöÇÏ´Â µ¥ ÇÊ¿äÇÑ »ç¿ëÀÚ Á¤ÀÇ Á¦¾î°¡ Æ÷ÇԵǾî ÀÖ´Â org.eclipse.swt.custom ÆÐŰÁö¸¦ Á¦°øÇÏÁö¸¸, ÄÚ¾î ¼¼Æ®ÀÇ SWT Á¦¾î¿¡´Â ÀÌ »ç¿ëÀÚ Á¤ÀÇ Á¦¾î°¡ Æ÷ÇԵǾî ÀÖÁö ¾Ê½À´Ï´Ù.
Á¦¾î
|
¸ñÀû
|
½ºÅ¸ÀÏ
|
À̺¥Æ® |
---|---|---|---|
Combo¿Í À¯»çÇÏÁö¸¸ °æ°è¼±ÀÌ ¾ø´Â ÄÞº¸¸¦ »ç¿ëÇϱâ À§ÇØ »ç¿ëÀÚ°¡ ÀÛ¼ºÇÕ´Ï´Ù. Å×ÀÌºí ¼¿ ³»¿¡¼ ÄÞº¸¸¦ »ç¿ëÇϱâ À§ÇØ ÀÌ Å¬·¡½º¸¦ °³¹ßÇß½À´Ï´Ù. |
BORDER, FLAT, READ_ONLY |
Dispose, Control*, Selection | |
Label°ú À¯»çÇÏÁö¸¸ »ý·« ºÎÈ£¸¦ »ç¿ëÇÏ¿© ÅØ½ºÆ® Ŭ¸®ÇÎÀ» Áö¿øÇÕ´Ï´Ù. ¶ÇÇÑ È°¼º Workbench º¸±â·Î Ç¥½ÃµÈ ¹è°æ»öÀÇ ±×¶óµ¥ÀÌ¼Ç È¿°úµµ Áö¿øÇÕ´Ï´Ù. ·¦ÇÎÀº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. |
CENTER, LEFT, RIGHT, SHADOW_IN, SHADOW_OUT, SHADOW_NONE |
Dispose, Control* | |
TabFolder¿Í À¯»çÇÏÁö¸¸ ¸Ç À§ ¶Ç´Â ¸Ç ¾Æ·¡ Åǰú °æ°è¼± ¸ð¾çÀÇ Ãß°¡ ±¸¼ºÀ» Áö¿øÇÕ´Ï´Ù. |
BORDER, FLAT, BOTTOM, TOP |
Dispose, Control*, Selection | |
CTabFolderÀÇ ÆäÀÌÁöÀÇ °æ¿ì ÅÇ¿¡ ÇØ´çÇÏ´Â ¼±Åà °¡´ÉÇÑ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º ¿ÀºêÁ§Æ®. |
|
Dispose, Control* | |
ÇÏÀ§¸¦ Çà ¶Ç´Â ¿ ¹è¿·Î Ç¥½ÃÇÏ°í »õ½Ã¸¦ »ç¿ëÇÏ¿© ÇÏÀ§¸¦ ±¸ºÐÇÏ¿© »ç¿ëÀÚ°¡ Å©±â¸¦ Á¶Á¤ÇÒ ¼ö ÀÖ´Â º¹ÇÕ Á¦¾î |
BORDER,HORIZONTAL, VERTICAL |
Dispose, Control* | |
ÄÁÅÙÃ÷¸¦ À̵¿ÇÏ°í ¼±ÅÃÀûÀ¸·Î ÄÁÅÙÃ÷¸¦ È®ÀåÇÏ¿© »ç¿ë °¡´ÉÇÑ °ø°£À» ä¿ì´Â º¹ÇÕ Á¦¾î |
BORDER, H_SCROLL, V_SCROLL |
Dispose, Control* | |
»ç¿ëÀÚ°¡ ÅØ½ºÆ®¸¦ ÀÔ·ÂÇÒ ¼ö ÀÖ´Â ÆíÁý °¡´ÉÇÑ Á¦¾î. Á¦¾î ¾ÈÀÇ ÅØ½ºÆ®¿¡´Â Ư¼ö ±Û²Ã°ú »ö»ó(Àü°æ ¹× ¹è°æ)ÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù. |
BORDER, FULL_SELECTION, MULTI, SINGLE, WRAP, READ_ONLY |
Dispose, Control*, ExtendedModify, LineGetBackground, LineGetSegments, LineGetStyle, Modify, Selection, Verify, VerifyKey | |
»ç¿ëÀÚ°¡ ¼±ÅÃÇÒ ¼ö ÀÖ´Â Ç׸ñÀÇ °èÃþ ±¸Á¶ ¸ñ·ÏÀ» Ç¥½ÃÇÏ´Â ¼±Åà °¡´ÉÇÑ Á¦¾î. Ç׸ñÀÇ ´Ù¸¥ ¼Ó¼ºÀ» ³ªÅ¸³»´Â ¿©·¯ ¿À» Ç¥½ÃÇÏ´Â Çà¿¡ ÀÖ´Â Ç׸ñ |
BORDER, SINGLE, MULTI, CHECK, FULL_SELECTION |
Dispose, Control*, Selection, DefaultSelection, Collapse, Expand | |
TableTreeÀÇ Æ®¸® Ç׸ñ °èÃþ ±¸Á¶¸¦ ³ªÅ¸³»´Â ¼±Åà °¡´ÉÇÑ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º ¿ÀºêÁ§Æ®. |
|
||
¼¼ °³ÀÇ ÇÏÀ§¸¦ °¡·Î·Î Ç¥½ÃÇÏ°í ·¹À̾ƿô°ú °æ°è ¸Å°³º¯¼ö¸¦ ÇÁ·Î±×·¥¿¡ µû¶ó Á¦¾îÇÒ ¼ö ÀÖ´Â º¹ÇÕ Á¦¾î. º¸±âÀÇ ·¹À̺í/µµ±¸ ¸ðÀ½/¸Þ´º ·ÎÄà ¸·´ë¸¦ ±¸ÇöÇϱâ À§ÇØ Workbench¿¡¼ »ç¿ëÇÕ´Ï´Ù. |
BORDER, FLAT |
Dispose, Control* |
Control* = Control¿¡¼ »ó¼ÓµÈ À̺¥Æ®: FocusIn, FocusOut, Help, KeyDown, KeyUp, MouseDoubleClick, MouseDown, MouseEnter, MouseExit, MouseHover, MouseUp, MouseMove, Move, Paint, Resize
»ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget)¸¦ ±¸ÇöÇϱâ Àü¿¡ ´ÙÀ½°ú °°Àº Áß¿äÇÑ ¹®Á¦ ¸î °¡Áö¸¦ °í·ÁÇØ¾ß ÇÕ´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget)°¡ ÇÊ¿äÇÑÁö È®ÀÎÇϰí Áö¿øÇÒ Ç÷§ÆûÀ» °áÁ¤ÇßÀ¸¸é À§ÁöÆ®(widget)¿¡ ´ëÇÑ ¿©·¯ ±¸Çö ¹æ¹ýÀ» »ý°¢ÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. ±âº» OS Ç÷§Æû¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ´Â ³»¿ë¿¡ µû¶ó ´ÙÀ½ ¹æ¹ýÀ» È¥ÇÕ ¹× ´ëÀÀ½Ãų ¼ö ÀÖ½À´Ï´Ù.
SWT¿¡¼ Á¦°øÇÏÁö ¾Ê´Â ±âº» À§ÁöÆ®(widget)°¡ ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÇÊ¿äÇÒ °æ¿ì ±âº»ÀûÀ¸·Î À̸¦ ±¸ÇöÇØ¾ß ÇÕ´Ï´Ù. Ç÷§Æû À§ÁöÆ®(widget), Ÿ»çÀÇ À§ÁöÆ®(widget) ¶Ç´Â Ç÷§Æû °øÀ¯ ¶óÀ̺귯¸®ÀÇ ±âŸ À§ÁöÆ®(widget) µîÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.
¸ðµç SWT Ç÷§Æû¿¡´Â °øÀ¯ ¶óÀ̺귯¸®(¿¹: WindowsÀÇ DLL)¿Í JAR(Java Ŭ·¡½º ÆÄÀÏÀÇ °æ¿ì)ÀÌ ¸ðµÎ Á¦°øµË´Ï´Ù. °øÀ¯ ¶óÀ̺귯¸®¿¡´Â SWT¿¡ ÇÊ¿äÇÑ ±âº» ±â´ÉÀÌ ¸ðµÎ Æ÷ÇԵǾî ÀÖÁö¸¸ Ç÷§Æû¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ´Â Àüü ±â´É ¼¼Æ®°¡ ÀÖ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. SWT¿¡ ³ªÅ¸³ªÁö ¾ÊÀº ±âº» ±â´ÉÀ̳ª ±âº» À§ÁöÆ®(widget)¸¦ Ç¥½ÃÇÏ·Á¸é »ç¿ëÀÚ °íÀ¯ÀÇ °øÀ¯ ¶óÀ̺귯¸®¸¦ ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù. ÇÑ Ç÷§Æû¿¡¼ ±âº» ÄÚµå Á¶ÇÕÀ» »ç¿ëÇÏ°í ´Ù¸¥ Ç÷§Æû¿¡¼´Â ÀÌ½Ä °¡´É Äڵ带 »ç¿ëÇÒ °æ¿ì, ±âº» À§ÁöÆ®(widget)°¡ ÀÖ´Â Ç÷§Æû¿¡¼´Â °øÀ¯ ¶óÀ̺귯¸®¸¦ È£ÃâÇϰí ÀÌ½Ä °¡´ÉÇÑ À§ÁöÆ®(widget)°¡ ÀÖ´Â Ç÷§Æû¿¡¼´Â JARÀ» È£ÃâÇØ¾ß ÇÕ´Ï´Ù.
±âº» À§ÁöÆ®(widget)¸¦ ±¸ÇöÇÏ·Á¸é JNI(Java Native Interface), °øÀ¯ ¶óÀ̺귯¸®¿¡ ÀÖ´Â À§ÁöÆ®(widget)ÀÇ API, CÀÇ ±âº» OS Ç÷§Æû API¸¦ ÀÌÇØÇØ¾ß ÇÕ´Ï´Ù.
±¸ÇöÀÇ ±âº» ÇÁ·Î¼¼½º´Â ±âº» À§ÁöÆ®(widget)ÀÇ API Áß ¾î´À ºÎºÐÀ» Java API¿¡ ³ªÅ¸³¾Áö °áÁ¤ÇÏ°í ±âº» À§ÁöÆ®(widget)¸¦ È£ÃâÇÏ¿© ÀÛµ¿À» ±¸ÇöÇÏ´Â Java Äڵ带 ÀÛ¼ºÇÏ´Â °ÍÀÔ´Ï´Ù. °øÀ¯ ¶óÀ̺귯¸®¸¦ È£ÃâÇÏ·Á¸é JNI C Äڵ带 ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù.
»ç¿ëÀÚ °íÀ¯ÀÇ ±âº» À§ÁöÆ®(widget) ±¸ÇöÀ» ÀÛ¼ºÇÒ ¶§ SWT¸¦ ±¸ÇöÇÏ´Â µ¥ »ç¿ëÇÑ ¼³°è ¿øÄ¢À» µû¸£´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿¹¸¦ µé¾î, JNI ±âº»¿¡¼´Â °øÀ¯ ¶óÀ̺귯¸®·Î ÀÌ·ç¾îÁö´Â API È£Ãâ°ú ÀÏ´ëÀÏ·Î ¸ÊÇÎÇØ¾ß ÇÕ´Ï´Ù.
Creating Your Own Widgets using SWT..¿¡ ±âº» »ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget) ±¸Çö¿¡ ´ëÇÑ Àüü ¿¹°¡ ÀÖ½À´Ï´Ù.
»õ À§ÁöÆ®(widget)ÀÇ °³³äÀ̳ª ±¸ÇöÀÌ ±âÁ¸ À§ÁöÆ®(widget)¿Í À¯»çÇÒ °æ¿ì ±âÁ¸ SWT À§ÁöÆ®(widget)¸¦ ·¦ÇÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¹æ¹ýÀº TableTreeÀÇ ±¸Çö¿¡ »ç¿ëµË´Ï´Ù.
À§ÁöÆ®(widget)¸¦ ·¦ÇÎÇÏ·Á¸é Á¦¾î¿¡ ÇÏÀ§°¡ ÀÖ´ÂÁö ¿©ºÎ¿¡ µû¶ó Composite ¶Ç´Â Canvas À§ÁöÆ®(widget)¸¦ ¼ºêŬ·¡½º·Î ºÐ·ùÇϽʽÿÀ. »ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget)ÀÇ »ý¼ºÀÚ¿¡¼ ·¦ÇÎµÈ À§ÁöÆ®(widget)¸¦ ÀÛ¼ºÇϽʽÿÀ. ±¸Çö¿¡ ´ëÇØ ·¦ÇÎµÈ À§ÁöÆ®(widget)ÀÇ API¸¦ È£ÃâÇϱ⠶§¹®¿¡ ÀÛ¼ºµÈ À§ÁöÆ®(widget)´Â Java·Î 100% À̽ÄÇÒ ¼ö ÀÖ½À´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget)¸¦ ±¸ÇöÇϱâ À§ÇØ Ã³À½ºÎÅÍ ½ÃÀÛÇÏ´Â °Íº¸´Ù´Â À§ÁöÆ®(widget)¸¦ ·¦ÇÎÇÏ´Â °ÍÀÌ ´õ °£´ÜÇÕ´Ï´Ù. ±×·¯³ª »õ À§ÁöÆ®(widget)ÀÇ API¸¦ ¼³°èÇÒ ¶§ ÁÖÀÇÇØ¾ß ÇÕ´Ï´Ù. ´ÙÀ½°ú °°Àº Áß¿äÇÑ ÆÁÀÌ ÀÖ½À´Ï´Ù.
À§ÁöÆ®(widget)°¡ ·¦ÇÎµÈ À§ÁöÆ®(widget) "À¯Çü"ÀÎÁö ¶Ç´Â ´Ü¼øÈ÷ ·¦ÇÎµÈ À§ÁöÆ®(widget)¸¦ ±¸Çö¿¡ »ç¿ëÇÏ´ÂÁöÀÇ ¿©ºÎ¸¦ °í·ÁÇϽʽÿÀ. ¿¹¸¦ µé¾î, Å×ÀÌºí Æ®¸®´Â Å×À̺í À¯ÇüÀÌ ¾Æ´Õ´Ï´Ù. Å×ÀÌºí Æ®¸®´Â Çà ¹øÈ£ »öÀκ°·Î Ç׸ñÀ» ÂüÁ¶ÇÏÁö ¾Ê½À´Ï´Ù. TableTree¿¡¼´Â ´Ü¼øÈ÷ Å×À̺íÀ» »ç¿ëÇÏ¿© ÇÁ¸®Á¨Å×À̼ÇÀ» ±¸ÇöÇÏ°í Æ®¸® ÀÛµ¿À» Ãß°¡ÇÕ´Ï´Ù. ´Ü¼øÈ÷ ±¸Çö»óÀÇ ÀÌÀ¯ ¶§¹®¿¡ À§ÁöÆ®(widget)¸¦ ·¦ÇÎÇÒ °æ¿ì API´Â ±âº» À§ÁöÆ®(widget)ÀÇ API¿Í ºñ½ÁÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.
°¡´ÉÇÑ ÇÑ ¸Þ¼Òµå¿Í À̺¥Æ®¸¦ Àü´ÞÇÏÁö ¸¶½Ê½Ã¿À. ·¦ÇÎµÈ À§ÁöÆ®(widget)ÀÇ Àüü API¸¦ ´Ù½Ã ±¸ÇöÇÏÁö ¸¶½Ê½Ã¿À. ±×·¸Áö ¾ÊÀ¸¸é ÀÌÈÄ ¸±¸®½º¿¡¼ ·¦ÇÎµÈ API°¡ º¯°æµÉ °æ¿ì °è¼Ó ijġ¾÷À» ¼öÇàÇÏ°Ô µË´Ï´Ù. setFont, setForeground ¹× setBackground¿Í °°ÀÌ ´ëºÎºÐÀÇ À§ÁöÆ®(widget)¿¡ °øÅëÀÎ ¸Þ¼Òµå¸¦ Àü´ÞÇØ¾ß ÇÕ´Ï´Ù.
·¦ÇÎµÈ À§ÁöÆ®(widget)ÀÇ API ´ëºÎºÐÀ» ±¸ÇöÇÒ °æ¿ì¿¡´Â API ·¹º§¿¡¼ ·¦ÇÎµÈ À§ÁöÆ®(widget)¸¦ ³ªÅ¸³»°í ÀÀ¿ëÇÁ·Î±×·¥ Äڵ忡¼ ·¦ÇÎµÈ À§ÁöÆ®(widget)¸¦ ¹Ù·Î »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇϽʽÿÀ. ÀÌ °æ¿ì °á±¹ »õ À§ÁöÆ®(widget)¸¦ Á¦°øÇÏ´Â °ÍÀÌ ÀûÀýÇÑÁö ´Ù½Ã »ý°¢ÇÒ °ÍÀÔ´Ï´Ù. À§ÁöÆ®(widget)¿¡ ÀÛµ¿À» Ãß°¡ÇÏÁö¸¸ À§ÁöÆ®(widget)ó·³ º¸ÀÌÁö ¾Ê´Â "¾î´ðÅÍ"·Î ±â´ÉÀ» ±¸ÇöÇÏ´Â °ÍÀÌ ´õ ³ªÀ» ¼ö ÀÖ½À´Ï´Ù. JFace Ç¥½Ã±â´Â ÀÌ ÆÐÅÏÀ» µû¸¨´Ï´Ù.
Âü°í: ÀÌ ¼³¸í¿¡¼´Â À§ÁöÆ®(widget)¸¦ ·¦ÇÎÇÏ¿© À§ÁöÆ®(widget) ÀÛµ¿À» È®ÀåÇÏ´Â ¸éÀ» ÁßÁ¡ÀûÀ¸·Î ´Ù·ç°Ú½À´Ï´Ù. ¼ºêŬ·¡½º·Î ºÐ·ùÇÏ¿© À§ÁöÆ®(widget)¸¦ È®ÀåÇϸé À§ÁöÆ®(widget)°¡ ¼öÆÛŬ·¡½ºÀÇ ±¸Çö¿¡ Á¾¼ÓµÇ¹Ç·Î ±ÇÀåµÇÁö ¾Ê½À´Ï´Ù.
»õ À§ÁöÆ®(widget) ±¸ÇöÀ» µµ¿ÍÁÙ ¼ö ÀÖ´Â ±âº» Äڵ峪 ±âÁ¸ À§ÁöÆ®(widget)°¡ ¾ø´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ÀÌ·± °æ¿ì¿¡´Â SWT ±×·¡ÇÈ È£ÃâÀ» »ç¿ëÇÏ¿© »ç¿ëÀÚ°¡ Á÷Á¢ À§ÁöÆ®(widget)¸¦ ÀÛ¼ºÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº ¸Å¿ì º¹ÀâÇÒ ¼ö ÀÖÁö¸¸ ¿Ïº®ÇÏ°Ô ÀÌ½Ä °¡´ÉÇÑ ±¸ÇöÀ» ÀÛ¼ºÇÒ ¼ö ÀÖ´Â ÀÌÁ¡ÀÌ ÀÖ½À´Ï´Ù.
´ÙÀ½ ±ÔÄ¢À» »ç¿ëÇÏ´Â Canvas ¶Ç´Â Composite Ŭ·¡½º¸¦ ¼ºêŬ·¡½º·Î ºÐ·ùÇÏ¿© »ç¿ëÀÚ ÀÛ¼º Á¦¾î¸¦ ±¸ÇöÇÕ´Ï´Ù.
»ç¿ëÀÚ ÀÛ¼º Á¦¾î¿¡¼ ³»ºÎ »óÅ´ Java ÀνºÅϽº º¯¼ö¿¡ º¸°üµË´Ï´Ù. À§ÁöÆ®(widget) ¿ä±¸»çÇ׿¡ µû¶ó API¿Í ½ºÅ¸ÀÏÀ» Á¤ÀÇÇÕ´Ï´Ù.
»ç¿ëÀÚ ÀÛ¼º À§ÁöÆ®(widget)ÀÇ ³»ºÎ ±¸Çö¿¡´Â ´ë°³ ´ÙÀ½°ú °°Àº ÁÖ¿ä ÀÛ¾÷ÀÌ Æ÷ÇԵ˴ϴÙ.
org.eclipse.swt.custom¿¡ ±¸ÇöµÈ ¸¹Àº À§ÁöÆ®(widget)¿¡¼ ÀÌ ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. CLabel¿¡ °£´ÜÇÑ ¿¹°¡ ÀÖ½À´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ À§ÁöÆ®(widget)¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Creating your own widgets using SWT.¸¦ ÂüÁ¶ÇϽʽÿÀ.