ãã¤ããä¸è©±ã«ãªã£ã¦ããWxWikiãæç²ãã¦ç¿»è¨³
å
ãã¿
WxWidgets Compared To Other Toolkits - WxWiki
wxWidgetsã¨ä»ã®ãã¼ã«ãããã®æ¯è¼
ããã¤ãã®ä¸è¬çãªè¦ãæ¸ãï¼
- wxWidgetsã¯C++ã«ãã£ã¦ã®ã¿åä½ããããã§ã¯ããã¾ãããpython, perl, php, java, lua, lisp, erlang, eiffel, C#(.NET), BASIC, rubyããã¦Javascriptã§ãããã¤ã³ãã£ã³ã°ãããã¾ãï¼ãã¤ã³ãã£ã³ã°ã«ã¤ãã¦ã®一般的な情報ãè¦ã¦ãã ããï¼
- wxWidgetsã¯ãã£ã¨ãå®ç§ãªGUIãã¼ã«ãããã®ä¸ã¤ã§ããããããã®ã¦ã¼ãã£ãªãã£ã¯ã©ã¹ãããã¾ã
- ããããã®ããã¥ã¡ã³ããããã¾ãï¼å°ãæ£é¸æ°å³ã§ããâ¦ï¼
- å人使ç¨ãåç¨ä½¿ç¨ãã©ã¡ããèªç±ã§ã*1
- å¯è½ãªéããwxWidgetsã¯ãã©ãããã©ã¼ã åºæã®SDKã使ç¨ããã·ã¹ãã ãç¨æããã¦ã£ã¸ã§ããã使ç¨ããã*2ããã¯Windowsã§ã³ã³ãã¤ã«ããããã°ã©ã ãWindowsã®ããã°ã©ã ã®ã«ãã¯ã¢ã³ããã£ã¼ã«ãä¿æããLinuxã®ãã·ã³ã§ã³ã³ãã¤ã«ããããã°ã©ã ãLinuxã®ããã°ã©ã ã®ã«ãã¯ã¢ã³ããã£ã¼ã«ãä¿ã¤ãã¨ãæå³ããã
- ãã®ç¹ã«ãããwxWidgetsã®å©ç¹ã¯ãwxWidgetsï¼ã§ä½ã£ãã¢ããªï¼ã®è¦ãç®ãåä½ãããã¦è¦ãæãããã©ãããã©ã¼ã åºæã§ããã¨ããäºã§ããâ¦ã¨ãã©ããã©ãããã©ã¼ã åºæã®ç¹å¾´ãåãè¾¼ãã§ããå ´åãããã¾ãï¼ä¾ãã°ãOS Xã§ã¯ãã¹ã¦ã®ããã¹ãã¨ãªã¢ã§çµã¿è¾¼ã¿ã®ã¹ãã«ãã§ãã¯ã使ç¨å¯è½ã§ãããªã©ï¼
- ãã®ç¹ã«ãããwxWidgetsã®é£ç¹ã¯ãã¢ããªã®åä½ããã©ãããã©ã¼ã ã«ãã£ã¦ç°ãªãã¨ããç¹ã§ããã¤ã¾ãã¦ã£ã¸ã§ããã軽éãªãã¼ã«ãããã¯ãã©ãããã©ã¼ã åºæã®ç¹å¾´ã失ã£ã¦ã¯ããããåæ§ã«ãã©ãããã©ã¼ã åºæã®ã³ã¼ããæå°åãã¦ããã¨è¨ããï¼ããæ ã«ãã©ãããã©ã¼ã ãã¨ã®ç°ãªãåä½ã«ãããªã¹ã¯ã¨ããã«ãããã°ãæå°åã§ããã®ã ï¼ãã¢ããªã®èªç¶ãªè¦ãç®ã«ãã ããã¨ãããã¨ã¯ãwxWidgetsãã·ã¹ãã ã®ãã¼ãã®ä»£ããã«ã«ã¹ã¿ãã¤ãºãããè¦ãç®ã®ã¢ããªãä½æããã®ã«é©ãã¦ããªãã¨ãããã¨ãæå³ããã
- wxWidgetsã¯ãã¯ãã®ä½¿ãéãã§ããã¨ã®æªè©ãé ãã¦ããã¾ããç¹ã«ã¤ãã³ããã¼ãã«ã«ããã¦ããããã強調ãã¦ããã¾ãã¨wxWidgetsã®å®è£ ã«ã¯å¸¸ã«ãã¯ããªãã®ä»£æ¿å®è£ ãç¨æãã¦ãã¾ããããã¦ç¹ã«wxWidgets-2.9(3.0)ã§ã¯å¤ããã¯ããã¼ã¹ã®ãã¯ããã¯ã®å®è£ ã«å¯¾ãã代æ¿ï¼ã¤ã¾ããã³ãã¬ã¼ãã使ç¨ããã¢ãã³ãªå®è£ ï¼ãç¨æããåªåãè¡ãã¾ãããããæ ãããªãããã¯ããå«ãã å¤ãã³ã¼ããè¦ãããã¨ãã¦ããããã¯wxWidgetsãæä¾ããå ¨ã¦ã§ããã¨ããªãã確信ããã«ã¯è¶³ããªã*3
ã¯ãã¹ãã©ãããã©ã¼ã ãªGUIãã¼ã«ãããã«ã¤ãã¦ã¯ãスラドにスレが立っていますãããã¯ã¡ãã£ã¨å¤ãã§ãããæè©®ã¹ã©ãã§ããï¼ç¬ï¼ããããããã§ã¯æçãªæ´å¯ãå¾ãããããããã¾ããã
訳注ï¼ï¼ãã¤ãã¼ãªGUIãã¼ã«ãããã¯ãããã使ãããªããã訳ãã¦ãç¡æå³ãªã®ã§è¨³ãã¾ããã
訳注ï¼ï¼ã¾ããæ¯è¼ã¯å¸¸ã«wxWidgetså´ããè¦ããã®ã§ã
Qt
- Qt (http://qt.nokia.com/) 㨠wxWidgetsã¯ã©ã¡ããGUIã¨ã¯é¢ä¿ããªãã¯ã©ã¹ãæã¡åããã¦ãããä¾ãã°æ¥ä»/æéãã³ã³ããããããã¯ã¼ã¯ãããã¦OpenGLãªã©ã
- Qt4,5ã¯MS Windows, Mac, ããã¦GNU/Linuxã«ããã¦LGPLã©ã¤ã»ã³ã¹ãããã¯åç¨ã©ã¤ã»ã³ã¹ã§ä½¿ç¨åºæ¥ããä¸æ¹ã§wxWidgetsã®ãã¹ã¦ã®ãã¼ãã¯LGPLã®ä¿®æ£ã©ã¤ã»ã³ã¹*4ã§é å¸ã§ãããããã¯ã¤ã¾ããããã©ã¤ã¨ã¿ãªã®ã¢ããªã±ã¼ã·ã§ã³ã®éçºã¨é å¸ãã©ã¤ã»ã³ã¹è²»ç¨ãªãã«è¡ãããã¨ãæå³ããã
- Qtã¯wxWidgetsããã£ã¦ãããããªã·ã¹ãã åºæãã¼ããæã¡ã¾ãããQtã¯ã·ã¹ãã ãç¨æããã¦ã£ã¸ã§ããã使ç¨ããããã®ãã¼ããã¨ãã¥ã¬ã¼ããã¾ããããã®æå³ããã¨ããã¯ãQtãå®éã®ã¨ããã©ã®ãã©ãããã©ã¼ã ã§ãQtèªèº«ãã¦ã£ã¸ã§ãããæç»ãã¦ããã¨ããäºã§ãããã ããQtãMac OS Xã¨Windows XP/Vistaã«ããã¦ãã¤ãã£ãAPI *5 ã使ç¨ããç¹å¥ãªã¹ã¿ã¤ã«ã使ç¨åºæ¥ãã¨ããäºã¯è¨åãã価å¤ãããã§ããããããã¯ã¹ã¯ãã¼ã«ãã¼ããã¿ã³ãªã©ã®æ¨æºçãªã¦ã£ã¸ã§ããã®æç»ãä»ã®ãã¤ãã£ãã¢ããªã¨åæ§ã«è¡ããã¨ãåºæ¥ããã¤ãã³ããã³ããªã³ã°ãã¤ã¾ãè¦è¦çãªãã£ã¼ãããã¯ã®çµæã¨ã¦ã£ã¸ã§ããã®ã¬ã¤ã¢ã¦ãã¯å¸¸ã«Qtã«ãã£ã¦å®è£ ãããã
- Qtã®ãã®ã¢ããã¼ãã¨åæ§ã®è©¦ã¿ãwxUniversalã¨ãã¦wxWidgetså ã«ä¿ç®¡ããã¦ãã
- KDEã¨çµã¿è¾¼ã¿Linuxã«ã¤ãã¦ãè¨åãã¹ãã§ããããQtã¯ãã¤ãã£ããªGUIã©ã¤ãã©ãªã§ã
- Qtã¯C++è¨èªãMOCã¨å¼ã°ãããã®ã§æ¡å¼µãã¦ãã¾ããMOCã¯Qtã®signal-slotsã®ãããªæ©è½ãæä¾ãã¾ããå©ç¹ã¯signal-slotã使ã£ãã¤ãã³ãå¦çã®æ©å¾®ã§ããé£ç¹ã¯ãã®ä»çµã¿ãããªãã®ãã«ãã·ã¹ãã ãä¾µé£ããè¨èªã®éæ¨æºã®æ©è½ã使ããããã¨ããç¹ã§ããwxWidgetsã¯C++è¨èªã®æ¡å¼µã¯ããªãã®ã§ããã«ãã·ã¹ãã ãä¾µé£ãããã¨ããªãæ¨æºçãªC++ãæå¾ ãã¦ããéçºè ãé©ããããã¨ããªã
- Qtã¯ãã¬ã¼ã ãããã¡ããã£ãGNU/Linuxãã¼ã¹ã®ãã¹ã¦ã®æ©è½ãåããçµã¿è¾¼ã¿ç¨GUI( Qt for Embedded Linux )ãåãã¦ããããããæå³ããã¨ããã¯ã /dev/fb ãåããLinuxããããã°è¦å´ãªãã«ãµã³ãã«ã®ã¢ããªãèµ°ããããã¨ãåºæ¥ãã¨ãããã¨ã ãQt for Embedded Linuxã¯X11ã¨æ¯ã¹ã¦ãã¡ã¢ãªå æ度ã¯å°ããã
- Qtã®ããã®IDEã¯æ°å¤ããããQt, QtDesigner, QtCreator, QDevelop, Edyukãªã©ãã¾ãåæ§ã«ãæåãªIDEã«çµ±åããã¦ãããã®ãVisual StudioãeclipseãXCodeä»å±ã®ç©ããããï¼ããã«ã¤ãã¦ã¯wxWidgetsã«ãããã¤ãããï¼
- Qtã¯ä¾¿å©ãªåç¨ãµãã¼ããæä¾ãã¦ããï¼ããããããã«ã¤ãã¦ã¯wxWidgetsã«ããããhttp://www.wxwidgets.org/support/support.htmãã覧ãã ããï¼
- wxWidgetsã«ã¯Qtãã¼ã¹ã®ã¢ããªã±ã¼ã·ã§ã³ãåããããã®ãã¼ããæºåããã¦ããï¼wxWidgetsã®Subversionã§wxQtãã©ã³ããè¦ã¦ãã ããï¼ãããã¯wxWidgetsã®ã¢ããªã±ã¼ã·ã§ã³ãGTK-Qtãå©ç¨ããªãã¦ãæ¸ãããã«ããããã«ãKDEåºæã®ã«ãã¯ã¢ã³ããã£ã¼ã«ãæä¾ããã¢ããªã±ã¼ã·ã§ã³ããã«ãããããã®ãã®ã§ãã
FLTK
- FLTKã®ãµã¤ãï¼http://www.fltk.org/
- wxWidgetsã¯ãã£ã¨æçãããªãã¸ã§ã¯ãæåã§è¨è¨ããã¦ãã¾ã
- FLTKã¯è»½éã§ãããwxWidgetsã¯ããå¤ãã®æ©è½ãåãã¦ãã¾ãï¼wxWidgetsã¯ãããã¯ã¼ã¯ãå°å·ããªã©ã®æ©è½ãæã¡ã¾ããFLTKã¯ãããã®æ©è½ã®ãµãã¼ããéããã¦ãããåå¨ãã¾ããï¼ãwxWidgetsã®æ©è½ãªã¹ã(http://www.wxwidgets.org/about/feature2.htm)ã¨FLTKã®æ©è½ãªã¹ã(http://www.fltk.org/documentation.php/doc-1.1/intro.html#2_2)ãæ¯è¼ãã¦ã¿ã¦ãã ããã
- FLTKã¯å®éãããæã®æ··ãã ãé常ã¨ã¯ç°ãªãã¦ã£ã¸ã§ããã®é¡ã®ãã®ãåãã¦ãã¾ããFLTKã®FLUIDã§ã§ãããã¨ã¯wxDesignerãDialogEditã§ã§ãããã¨ã¨æ¯è¼ã§ããã§ããããç§ã¯FLTKã®ã¢ããªãwxWidgetsã«ç§»æ¤ããäºãããã¾ããããã¿ã³ã®ã¨ãã¥ã¬ã¼ãã«ã¨ã¦ãè¦ãã¿ã¾ããã
- FLTKã®ä¿®æ£LGPLã©ã¤ã»ã³ã¹ã¯wxWidgetsã®ã©ã¤ã»ã³ã¹ãããå³ãç®ã§ããããããéçãªã³ã¯ããå ´åã«ã¯ä¾å¤ãè¨ãã¦ãã¾ãã
- 軽éãªIDEã®FLUIDã¨ãããã®ãããã¾ã(http://www.fltk.org/documentation.php/doc-1.1/fluid.html).
FOX
- FOXã®ã¦ã§ããµã¤ãï¼http://www.fox-toolkit.org/
- FOXã¯è»½éã§ãããwxWidgetsã¯ããå¤ãã®æ©è½ãåãã¦ãã¾ã
- wxWidgetsã¯ããå®ç§ãªAPIããã¡ã¾ããä¸æ¹ã§FOXã¯GUIæç»ã«ä¸»ç¼ãç½®ãã¦ãã¾ã
- FOXã¯ã©ã®ãã©ãããã©ã¼ã ã§ãèªåèªèº«ã§ã¦ã£ã¸ã§ãããæç»ãã¾ãã代ããã«ãã¤ãã£ãã®ã¦ã£ã¸ã§ããã使ç¨ãããã¨ãã§ãã¾ãã(Qtã®ããã«)ãwxWidgetsã¯ãã¹ã¦ã®ãµãã¼ãæ¸ã¿ã®ãã©ãããã©ã¼ã ã«ããã¦ãã¤ãã£ãã®ãã¼ããæä¾ãã¾ããFOXã¯åè¿°ã®çç±ã«ããåä½ãé«éããããã¾ããããFOXãæä¾ããã¢ããªã±ã¼ã·ã§ã³ã®ã«ãã¯ã¢ã³ããã£ã¼ã«ã¯å¯¾è±¡ã®ãã©ãããã©ã¼ã ã«é¦´æã¾ãªãããããã¾ããï¼â»ä¾ãã°WIndowsXPã®ãã¼ãã¯ä½¿ç¨ãããã¨ãã§ãã¾ããï¼
- FOXã¯å°å·æ©è½ã¨ã¢ã¸ã¢ç³»ã®è¨èªã«å¯¾ããå¤è¨èªãµãã¼ããããã¾ãã
- FOXã§ã¯æ¨æºçãªWindowsã®ãã¤ã¢ãã°ããã¯ã¹ããµãã¼ãããã¦ãã¾ãããããããã©ãããã©ã¼ã éä¾åã®åæ§ã®æ©è½ãå©ç¨å¯è½ã§ã
Java GUI toolkits
- Javaã¯ç°ãªãGUIãã¼ã«ãããã¨é£æºã§ãã¾ããä¾ãã°
- ã»Swing
- ã»AWT
- ã»SWT
- ã»Qt
- ã»ããã¦wxWidgetsããã*6
- wxWidgetsã§æ¸ãããã¢ããªã±ã¼ã·ã§ã³ã¯æçµçã«æ©æ¢°èªã«ã³ã³ãã¤ã«ããã¾ããSWTãSwingããã¦Qtãåæ§ã§ããããããªãããã¢ããªã±ã¼ã·ã§ã³ã®GUI以å¤ã®ã½ã¼ã¹ã³ã¼ãã«ã¤ãã¦ã¯ãwxWidgetsã«ããã¦ã¯æ©æ¢°èªã«ã³ã³ãã¤ã«ããã¾ãããJavaã®ã¢ããªã±ã¼ã·ã§ã³ã«ããã¦ã¯ä¸éè¨èªã«ç½®ãæãããã¾ããï¼ããããä»æ¥ã§ã¯SWTã¯C++ã®ãã¤ã³ãã£ã³ã°ãããã¾ãï¼*7
- ã»Javaã«ããã¢ããªã±ã¼ã·ã§ã³ã®æ§è½ã«ã¤ãã¦ã¯è¤æ°ã®åé¡ãåå¨ãããJavaã«ããã¢ããªã±ã¼ã·ã§ã³ã¯å¤§æµã®å ´åC/C++ã«ããã¢ããªã±ã¼ã·ã§ã³ãããã¡ã¢ãªãå¤ã使ç¨ãããã¾ããJavaãã¼ã¹ã®ã¢ããªã±ã¼ã·ã§ã³ã®ä½¿ç¨è ã¯JVMãã¤ã³ã¹ãã¼ã«ããªããã°ãªããªããè¿å¹´ã§ã¯ãããå¤ãã®ã³ã³ãã¥ã¼ã¿ã¼ãJVMãã¤ã³ã¹ãã¼ã«ããããã«ãªãããã®ãã¨ãåé¡ã«ãªããªããªãã¤ã¤ãããããããªãããå¤ãJVMã使ç¨ãã¦ãã人ã ã¯æ§è½/ã»ãã¥ãªãã£ã®åé¡ã«è¦ããã§ããã
- ã»wx4jã¯Javaã«ããwxWidgetsã®å®è£ ã§ãããwx4jã¯Javaããã°ã©ãã¼ããèªèº«ã®Javaè¨èªã®è³ç£ãä¿æãã¤ã¤ãC++ã§æ¸ãããããã°ã©ã ã«ãããã®æ§è½ãç¶æãããã¨ã許容ããwxWidgetsã®Javaãã¤ã³ãã£ã³ã°ã ã
- ã»wxWidgetsã¯å¤ãã®ããã°ã©ã è¨èªãã使ç¨ã§ãããã®çµ±åã容æã§ãããä¸æ¹ã§ãJavaã®GUIãã¼ã«ãããã¯JVMã使ç¨ããè¨èªããã®ã¿ããå©ç¨ã§ããªã(...ä¾ãã°JavaãJRubyãJythonãJavascriptãBeanShellãªã©ï¼
- ã»Javaã¯Java Webstartã«ããç°¡åã«ãã¦ã³ãã¼ãã»å±éã§ãã¾ããããæ ã¦ã¼ã¶ã¼ã¯ã¢ããªã±ã¼ã·ã§ã³ã試ç¨ã§ãã¾ãï¼ä¾ãã° http://jabref.sourceforge.net/ ãè¦ã¦ã¿ã¦ãã ããï¼
以ä¸ã®åé¡ã«ã¤ãã¦ã¯ããæ確ã«ãããã¹ãã§ããã©ãã§Javaã®GUIãã¼ã«ãããã«ã¤ãã¦è°è«ããã¹ãã§ããããï¼
- ã¯ãã¹ãã©ãããã©ã¼ã ã§ãããããã«ãJavaã¯ä¸è¬çã«å ±éã®åæ¯ãæãå°ãããªãããã«è¨è¨ããã¦ãã¾ãããã¼ã«ãããã®æ©è½ã¯å©ç¨å¯è½ãããã¯é©åãªãã©ãããã©ã¼ã ã®å ´åã®ã¿ä½¿ç¨ã§ãã¾ãããããã§ãªãå ´åã¯Javaã®APIããæ¾ç½®ããã¦ãã¾ããä¾ãã°ãWindowsã®ã¿ã¹ã¯ãã¼ã®æä½ãMac OSã®ã¡ãã¥ã¼ãã¼ãããã¦UNIXã®ãã¡ã¤ã«ã®å±æ§ãªã©ãªã©â¦
- ä¸è¨ããå¼ãåºããçµè«ã¨ãã¦ã¯ãwxWidgetsã§ã¯å¿ è¦ãªãã°ãã©ãããã©ã¼ã åºæã®ã³ã¼ãããã¤ã§ãæ¸ããï¼#ifdefã«ãã£ã¦ã³ã¼ããåå²ããããã¨ã§ããããã©ãããã©ã¼ã ã§ããã³ã³ãã¤ã«ãããªãããã«ä»åãããã¨ãã§ããï¼ãJavaã«ããã¦ã¯ã#ifdefã«ããããã®ããªããããæ ããªãã¯APIã®å¤ã¸å¤§ã¸ã£ã³ããã«ãããªããã°ãããªããªããåæ§ã«ãwxWidgetsã¯ç°ãªããã©ãããã©ã¼ã ã§ã¯å©ç¨ã§ããªãç¹å®ã®æ©è½ã«ã¤ãã¦ã¯ã¨ãã¥ã¬ã¼ããæä¾ãã¦ããï¼ä¾ãã°ãMDIãããªã¼ã³ã³ããã¼ã«ï¼
SDL
- http://www.libsdl.org
- SDL(Simple DirectMedia Layer)ã¯ã²ã¼ã ãã®ä»ã®ãã«ãã¡ãã£ã¢ã®ããã«æé©åãããCè¨èªã®ã©ã¤ãã©ãªã§ããæããªãã°ãã¹ã¦ãã«ã¹ã¿ã å¯è½ã§ãããä¸è¬çãªç¨éã®GUIã®ã¦ã£ã¸ã§ããã¯ããã¾ãããã¾ããSDL_ãã¬ãã£ãã¯ã¹ããå§ã¾ãããããã®Cè¨èªã®æ§é ä½ã使ç¨ãã¾ãã
- SDLã¯wxWidgetsã¨é£æºããããã¨ãå¯è½ã§ãï¼http://code.technoplaza.net/wx-sdl/
- LGPL v2ã®ãã¨ã«é å¸å¯è½ã§ã
- åä¸ã®ã¦ã£ã³ãã¦ã®ã¿ãéããã¨ã許容ãã¾ã
- OpenGLã¨ã®çµ±åã«æé©ã§ãï¼ãããã¯OpenGLã§ãã«ããããã©ã¤ãã©ãªãå©ç¨ããã¨ãããä¾ãã°OpenSceneGraphãCEGUIï¼
Allegro
- http://alleg.sourceforge.net
- Allegroã¯SDLã«ããä¼¼ãã¯ãã¹ãã©ãããã©ã¼ã ãªã²ã¼ã ããã°ã©ãã³ã°ç¨ã®Cè¨èªã®ã©ã¤ãã©ãªã§ãï¼ããã¯ã¨ã³ãã«ã¯ããªãã®ã¢ã»ã³ãã©ã使ç¨ãã¦ãã¾ãï¼
- wxWidgetsã¨åããããå¤ãã§ãï¼1993å¹´ãï¼
- Giftwareã©ã¤ã»ã³ã¹ã®ãã¨ã«é å¸å¯è½ã§ãï¼è¨ã£ã¦ã¿ãã°ãããªãã¯ãã¡ã¤ã³ã§ãï¼
- ãã«ãã«ã¯GCCã¨ã¢ã»ã³ãã©ãå¿ è¦ã§ã
- éçºãããæ°å¹´åããã¼ã¸ã§ã³ã§æ¢ã¾ã£ã¦ãã¾ããã¾ãä¸å¿ã¨ãªãéçºè ãä¸è¶³ãã¦ãã¾ãï¼å ã ã®éçºè ã¯ãã¯ããã¼ã ã«ã¯ãã¾ããï¼ãããã¦éçºããã©ã¼ã¯ãã¹ãã¨ããå é¨ã®è°è«ãããããã§ã
- GUIã®æ©è½ãç¨æã§ã - ä¸ã¤ã®ã¦ã£ã³ãã¦ã«åºæ¥åãã®æä½ãããµãã¼ãããã¦ãã¾ãã - ã¦ã£ã³ãã¦ãåãããã¨ããã§ãããâ¦ãªã©ãªã©
- Allegroã¯ã"æä½"ã«ã¤ãã¦ã¯ï¼å¤ãã®å¯å¤é·å¼æ°ã使ç¨ããé¢æ°ç¾¤ã«ãã£ã¦ã§ããâ¦ï¼æ¯è¼çãµãã¼ãããã¦ãã¾ããããã¦Qtã®ããã«ã©ã¤ãã©ãªèªèº«ãGUIã®æç»ãè¡ãã¾ãï¼ãããããã©ã«ãã§ã¯ããã¾ã§è¦æ ããããããã¾ããï¼ãã¦ã£ã³ãã¦ã¯æ¯è¼çç°¡åãªAPIã«ãã£ã¦ã«ã¹ã¿ãã¤ãºãå¯è½ã§ãï¼ããã¦ãããå°ãã¾ããªè¦ãç®ãæä¾ãããµãã©ã¤ãã©ãªãããã¾ãï¼
- æç»å¦çã¯wxWidgetsãããã£ã¨æ©ãã§ããããã¦OpenGLç¨ã®ã¬ã¤ã¤ãããã¾ãï¼allegrogl - http://allegrogl.sourceforge.net/ï¼ãããã¯OpenGLã®æç»ãããã©ã«ãããã容æã«ãããã®ã§ã
- GUIæãã®å¦çï¼å ¥åãªã©ï¼ã¯ä½ã¬ã¤ã¤ã§ãã ãããwxWidgetsã®å®è£ ãããæ©ãã§ã
- ããã»ã©å´åããããã¨ãwxWidgetsã¨ä½µç¨ã§ãã¾ã - Allegroã¯ããã¤ãã®ãã©ãããã©ã¼ã ã«ããã¦ã¦ã£ã³ãã¦ãã³ãã«ãå¾ãããã«ãã©ãããã©ã¼ã ç¹æã®æ©è½ãæã£ã¦ãã¾ããéçºè ã¯ãã®ã¦ã£ã³ãã¦ãã³ãã«ããwxWIdgetsã®ã¦ã£ã³ãã¦ãå¼ã³åºãããããããããããããã¨ãå®è¡ã§ãããä¸æ¹ã§ãwxWidgetsã¯ãã©ãããã©ã¼ã åºæã®main/WinMainã®ãããªãã®ãå¶å¾¡ããããã«wxAppã¨ããã¯ã©ã¹ã使ç¨ãã¦ããã®ã§ãAllegroã¯END_OF_MAIN()ã¨ãããã¯ããå¼ã³åºãå¿ è¦ããããï¼ã¤ã®ã©ã¤ãã©ãªãä½µç¨ããã®ã¯ã¡ãã£ã¨ããä½æ¥ã ãã決ãã¦éå´åã§ã¯ãªãã
GTK+
- http://www.gtk.org
- GTK+ã¨ã¯ãã¨ãã¨ã¯Gimp*8ã®ããã®ãã¼ã«ãããã§ãããããã¯Unixç³»ã®ã·ã¹ãã ã®ããã®LGPLã®Cè¨èªåãGUIã©ã¤ãã©ãªã§ã
- GTK+ã¯ãã¤ã¦WindowsãVMS*9ãããã¦ä»ã®ã·ã¹ãã åãã«ç§»æ¤ããã¾ããããããã¯åãAPIãã使ç¨ã§ãã¾ãï¼MacOSXããã¯ç¾å¨Appleã®æä¾ããX11.appããå©ç¨å¯è½ã§ãããã¤ãã£ãçã¯éçºä¸ã§ããã©ã¡ãããã«ãã¨ãç¹ã«ããã±ã¼ã¸ã³ã°ãè¦çã§ãï¼ããã主è¦ãªéçºã¯UNIXåãã§ããã¨ããã®ããã«ããã©ãããã©ã¼ã ã§ã®éçºã¨ã¯ã»ã¨ãã©å¾ããèãããããã®ã ããã§ã
- GTK+ã¯GNOMEã®ã¦ã¼ã¶ã¼ã¤ã³ã¿ã¼ãã§ã¤ã¹ãæ§ç¯ãã主è¦ãªã©ã¤ãã©ãªã§ã
- wxWidgetsã¨ã¯éããGTK+ã¯Cè¨èªã使ç¨ãã¾ãï¼ããã¦åæ§ã«GTKMMã¨ããC++ã®ã©ããã¼ãããã¾ã http://www.gtkmm.orgï¼
- GTK+ã¯glibã¨ããæ±ç¨çç¨éã®ããã®ã©ã¤ãã©ãªãä¾åé¢ä¿ã®ãããã«ããã¦ãã«ãããã¾ãï¼â¦glibã¯C++ã®STLã®ããã«ä½¿ãããããã¤ãã®æ§é ä½ãã¡ã¢ãªç®¡çç¨é¢æ°ãªã©ãæä¾ãã¾ãï¼
- GTK+ã§ä½æããã¢ããªã±ã¼ã·ã§ã³ã¯ããã¼ããªã©ã使ç¨ããªãéããã¹ã¦ã®ãã©ãããã©ã¼ã ã§å®å ¨ã«åãè¦ãç®ã¨åä½ã§ããWindowsã«ããã¦ã¯Wimpã®ãã¼ã(ããã¯UxThemeã使ç¨ãã)ã使ç¨ãããã¨ã§ãã¤ãã£ãã®è¦ãç®ã«è¿ã¥ãããã¨ãã§ãã¾ãã
- GTK+ã¯Windowsã«ããã¦ãã·ã¹ãã ãæä¾ããã¦ã£ã¸ã§ããã使ç¨ãã¾ãããããããã¼ãã使ã£ã¦ã¨ãã¥ã¬ã¼ããã¾ã
MFC
- MFCã¯Windowsã«ããã¦ã®ã¿ç¡åã§å©ç¨å¯è½ã§ã
- ã»ãããã³ããã·ã¥çã®MFCã¯Visual C++ Crossplatform Edition*10(æå¾ã«ç¢ºèªããã¨ãã¯800ãã«ããï¼ã¨ãããã®ãåå¨ãã¾ãããããã¼ã¸ã§ã³4.1ããã®ã³ã³ãã¤ã©ã¯ãµãã¼ãããã¦ããªã
- ã»MainWin*11ã¨å¼ã°ããUNIXã®å¤ç¨®ã¨ãããã®ãåå¨ãã¾ããããããã¯é©ç°çã«é«ä¾¡ã§ãã©ã³ã¿ã¤ã ç¨ã®ã©ã¤ã»ã³ã¹ãè¦æ±ããããããå¾ä½ã®ãããªããµãã¼ãã«ãããå ±åããªããã°ãªããªãã£ã
- wxWidgetsãMFCãã½ã¼ã¹ã³ã¼ããå©ç¨ã§ãã¾ããwxWidgetsã«EULAsã¯é¢ä¿ãã¦ãã¾ãã*12
- MFCã使ç¨ããã¢ããªã±ã¼ã·ã§ã³ã¯wxWidgetsã¨æ¯ã¹ã¦å®è¡ãã¡ã¤ã«ã®ãµã¤ãºãå°ããåºæ¥ãï¼ã¾ã¨ããªã³ã³ãã¤ã©ã«ã¯ç¡é¢ä¿ã§ãããï¼
- MFCã¯è¯è³ªãªåç¨ã¢ããªã±ã¼ã·ã§ã³ã®ã»ã¨ãã©ãæ ã£ã¦ãã
- MFCã®ã¡ãã»ã¼ã¸ããããããwxWidgetsã®ã¤ãã³ããã¼ãã«ãããè¯ãã¨è¨ã人ããã¾ã
- wxWidgetsã®ã¯ã©ã¹é層ã¯ããç´è¦³çãªä¸æ¹ã§ãMFCã¯æä¸ç´ã®ã¯ã©ã¹åãé¡ä¼¼çã«ãªãå¾åã«ãã
- .NETã¯åé¡ã§ã¯ããã¾ãã - MFCã¯.NETã«ç§»æ¤ããããã¨ã¯ããããªãã§ãããããããwxWidgetsã¯ãã§ã«.NETã®ã©ããã¼ã®éçºãα段éã¾ã§ç§»è¡ãã¦ãã¾ãï¼
- MFCã¯å¹ åºãã³ã³ãã¼ãã³ããå©ç¨å¯è½ã§ããç¹ã«ãã¼ã¿ã¨é£æºããGUIã®æç»ã«é·ãã¦ãã¾ã
- wxWidgetsã§ç°¡åã«å®ç¾ã§ãããã¨ãä¾ãã°ã¦ã£ã³ãã¦æç»ã®ç¹å®ã®æ¹å¼ï¼å¸¸ã«ãããã«ã¦ã£ã³ãã¦ã表示ããããªã©ï¼ãããä¸æ¹ã§ãMFCã§ããã°ç°¡åã«å®ç¾ã§ãããã¨ãããã¾ããä¾ãã°åãå¤ãå¯è½ãªãã¼ã«ãã¼ã
- ããããMFCã使ç¨ããæå¼·ã®å©ç¹ã¯MSVCã¨ããçµ±åéçºç°å¢ãå©ç¨ã§ãããã¨ã§ããã
- ã¯ã©ã¹åã¨ãã®ä»ã®ç¹ã«ã¤ãã¦ã®æ å ±ã¯ãWxWidgets For MFC Programmers - WxWikiãè¦ã¦ãã ãã
XUL Framework (Mozilla)
- https://developer.mozilla.org/en/XULãè¦ã¦ãã ãã
- Javascript, XULããã¦CSSã¯ãã¹ã¦Mozillaã®ããã°ã©ã ã«å¿ è¦ãªãã®ã§ãã -- XULã¯æ§é è¨è¿°è¨èªã§ãï¼HTMLãJavascriptã®åä½ãããã¦CSSã®ã¹ã¿ã¤ã«ã®ãããªãã®ï¼ãwxWidgetsã¯ãããã®ãã¹ã¦ãC++ã§å®ç¾ã§ãã¾ããXULã«C++ã使ã£ã¦æ¥ç¶ããæè¡(XPCOM)ã¯ã¨ã¦ãé£è§£ã§ããwxWidgetsã«ãã£ã¦ãã¹ã¦C++ã§ããã®ãããã§ãããã*13
Tk
- Tkã¯Tclã¨ããã¹ã¯ãªããè¨èªç¨ã«è¨è¨ãããGUIãã¼ã«ãããã§ããã®è¨èªã®æã主è¦ãªä½¿ç¨æ³ã§ããWelcome to the Tcler's Wiki!ã«ãã£ã¨æ å ±ãããã¾ãã
- Python, Perl, Ruby, C++ã®ãããªè¨èªã«ãã¤ã³ãã£ã³ã°ãåå¨ãã¾ã
- Tkèªä½ã¯ããã»ã©ã¦ã£ã¸ã§ãããæä¾ãã¾ããããããããã¤ãã®æ¡å¼µç¨ã©ã¤ãã©ãªã使ç¨å¯è½ã§ããä¾ãã°BWidgesã¯Cè¨èªãããã¯ç´ç²ãªTclã§æ¸ãããæ¡å¼µã§ãã
- 8.5以åã®ãã¼ã¸ã§ã³ã®Tkã¯æ代é ãã§ããã¤ãã«Tkã¯Windowsã¨Mac OS Xã«ããã¦ã¿ã¤ã«æ¡å¼µ*14ã¨Tk 8.5ã§ttkã追å ãã¾ãããTkã¯ä»ããããã®ãã©ãããã©ã¼ã ã§ãã©ãããã©ã¼ã åºæã®è¦ãç®ãæä¾ããããã«ãªã£ããLinuxã«ããã¦ã¯ãã¾ã æã®è¦ãç®ã®ã¾ã¾ã§ããããã¯ã ãã ãã¨é²è¡ãã¦ãã¾ãããTkã¯GTKã¨Qtç¨ã®ãã¼ããéçºä¸ã§ããããªãã¯Tkã§ä½ã£ãã¢ããªã±ã¼ã·ã§ã³ã®è¦ãç®ã®åä¸ã®ããã«ãä»ã®ãã¼ãã使ç¨ãããã¨ãã§ãã¾ã
- Tkã¯Pythonã«ããã¦ããã©ã«ãã®GUIãã¼ã«ãããã§ãããã®ãã¤ã³ãã£ã³ã°ã¯Tkinterã¨å¼ã°ãã¦ãã¾ããTkInter - Python Wiki
- Tkã¯å¼·åãªãã£ã³ãã¹ã¦ã£ã¸ã§ãããæã¡ã¾ããããã¯ä½ã§ãæç»ã§ãã¾ãããã«ã¹ã¿ã ã®ã¦ã£ã¸ã§ãããä½æãããã¨ãå¯è½ã§ãã
- Tkã¯å¼·åãªã¤ãã³ãå¦çæ©è½ãæã£ã¦ãã¾ã
- Tkã¯ãã®åç´ãªAPIã¨è¨è¿°ã³ã¼ãã®å°ãªãã«ãã£ã¦GUIã®è¨è¨ãå¿ è¦ãªãããã°ã©ãã¼ã«ä½¿ããã¦ãã¾ãã*15ããããããã§ãGUIã®ãã¶ã¤ãã¼ã¯ãã¾ãããHello World!ããã¯ã³ã©ã¤ãã¼ã§æ¸ãã¨:pack [ttk::label -text "Hello World!"]
- å®å ¨ãªGUIã®ããã°ã©ã ãTcl/Tkã§éçºããã¨ãä¸åã®ãã¤ããªãã¡ã¤ã«(ãªãã¨1MBç¨åº¦)ã«ã¾ã¨ãããã¾ããããã¯Starpackã¨å¼ã°ãããã¹ã¦ã®ä¸»è¦ãªãã©ãããã©ã¼ã ã§å±éããã¦ãã¾ããTclkit application runtimeã«ãã詳細ãªæ å ±ãããã¾ãã
- Tkã¯ã¨ã¦ãé©æ°çãªBSDã©ã¤ã»ã³ã¹ã«ã¦åç¨ã½ããã¦ã§ã¢éçºã許容ãã¾ã
- ã©ããã¦ããªãã¯Tkã使ãã¹ããï¼ããã¯ããªããç¡åã§ãæçããå®å®ãããã¹ã¯ãªããè¨èªã使ç¨ãã¦ããã¯ãã¹ãã©ãããã©ã¼ã ã®GUIãã¼ã«ããããå¿ è¦ã¨ãã¦ããããã§ãã
- ã©ããã¦ããªãã¯Tkã使ãã¹ãã§ãªããï¼ããã¯ããªããC++ã使ç¨ããäºå®ã§ããããæåãã大ããªã¦ã£ã¸ã§ãããå¿ è¦ã¨ãã¦ããããã ããã®å ´åã¯wxWidgetsã使ç¨ããã¹ãã§ãããã
==========================================================================================
ç·è©
- Google Native Clientã®è©ä¾¡ããªã â3ç¹
- ããJavaã§ããã ãâ¦ãªãã§wxWidgetsãªãã¦ä½¿ã£ã¦ããã ï¼â¦å ãåããªãï¼
- Electronã¨ãããªããå¤ãããããã¼ãªãã Electron | Build cross-platform desktop apps with JavaScript, HTML, and CSS.
ã¾ã¨ã表
ã©ã¤ãã©ãª | ã¯ãã¹ãã©ãããã©ã¼ã | ã³ã¼ãã£ã³ã°é£åº¦ | ç°å¢æ§ç¯é£åº¦ | ã©ã¤ã»ã³ã¹ | ã¦ã¼ãã£ãªãã£ã®å å®åº¦ | ãã©ãããã©ã¼ã åºæã³ã¼ã | ä¸è¨ã³ã¡ã³ã |
---|---|---|---|---|---|---|---|
wxWidgets | YES | æ®é | ç ©é | ä¿®æ£LGPL | ããããã¨ã¯å¤ããã©åå¿è ãã¨ã£ã¤ãã«ãã | ||
Qt | YES | æ®é | ç ©é | GPL or commercial | ãããã§ã | ||
FLTK | YES | ããé£ | ç°¡å | GPL | C++ã®ãã²ãæ¨è¦ | ||
FOX | YES | ï¼ | ç°¡å | LGPL | ãããããã | ||
Java | YES | æãã | ç°¡å | SWT -> EPL | ãï½ï½ï½åç¨ãªãJavaä¸æã§ããï½ï½ï½ï½ï½ | ||
SDL | YES | ããé£ï¼ | ç°¡å | zlib License | ã²ã¼ã ç¨ | ||
Allegro | YES | ï¼ | ï¼ | ãããªãã¯ãã¡ã¤ã³ | ãããããã | ||
GTK+ | YES | æ®é | ä¸å¯è½ãªå ´åãã | LGPL | æ¸ããå¤ãâ¦ï¼APIãï¼ | ||
MFC | NO | æ®é | ç°¡å | ãããã©ã¤ã¨ã¿ãª | .NETã«åã£ã¦ä»£ããããéå½ | ||
XUL | YES | ããé£ | ç ©é | GPL or LGPL or MPL | æå¼·ã»ããã使ãã«ãã | ||
Tk | YES | æãã | ç°¡å | BSD(?) | ããã ã¨æãã¾ã |
æ¸ç±
é¦è¨³ãªãã£ãã£ãï¼â¦
*1:wxWidgetsã¯LGPLããã®æ´¾çã©ã¤ã»ã³ã¹ã§ããã©ã¡ããã¨ããã¨BSDã¨ãMITã©ã¤ã»ã³ã¹ã«è¿ããèªç±ã½ããã¦ã§ã¢ã¨ã¯ã¡ãã£ã¨é ãã
*2:Mac OS Xã¯SDKããããããé ããã ããã®ã§ããã«ããããã©ã
*3:ãã¡ãã£ã¨ã½ã¼ã¹è¦ããããã§å¤æãããªããã¨ããéçºè ã®å¿ãè¦ãã
*4:OSIãã¯ã£ããã¨æ¿èªãã¦ãã
*5:Appeareance Manager on Mac OS X, UxTheme on Windows XP
*6:jwxã¯ãã¾ãæ´æ°ããã¦ãªãããã§ããâ¦
*7:ããã®æç« ã¯æªãããããã¯Javaã®ã¢ããªã±ã¼ã·ã§ã³ã«ã¤ãã¦è©±ãã¦ãã段ã§ãããQtãå ¥ãã®ã¯ããããæ°ããã
*8:ãåç¥ãçµµããç¨ã®ã¢ããªã±ã¼ã·ã§ã³
*9:http://ja.wikipedia.org/wiki/OpenVMS
*10:ãããªéçºç°å¢ãåå¨ãããã§ããâ¦ãã¾ãããªããéªæªãªOSã«éªæªãªIDEã両æ¹ããªããæå¼·ã«è¦ãããFreeBSDã¯ã«ã¼ãã«ãããã¯ãèµ·ããã¦æ»ã¬
*11:ãããããè³æããã£ã MainWin® 3.3 Build 67 Release Notes - ibm.com
*12:ãªããã®ã¸ã§ã¼ã¯ï¼
*13:ããã®è¨è¿°ã¯å ¨ä½çã«çããããXULã®å©ç¹ã¯ã¹ã¯ãªãããæ¸ãã°ã¯ãã¹ãã©ãããã©ã¼ã ã§ã¦ã£ã¸ã§ãããä½æã§ããç¹ãã¾ãMozillaã®Gecko(ãã®Javascriptã¨ã³ã¸ã³/CSSã®ãã¼ãµãå«ã)ããã®ã¾ã¾ä½¿ããç¹ã«ãããããæå³æå¼·ã ã¨æãããMozilla以å¤ã®ãã¼ã«ãã使ãã«ãããã¨ãé£ç¹ã