本教程原文链接:http://zetcode.com/gui/wxwidgets/introduction/

翻译:瓶哥

日期:2013年11月26日星期二

邮箱: 414236069@qq.com

主页:http://www.cnblogs.com/pingge/

若有翻译错误或者歧义请联系我!

这是一个基于C++编程语言的wxWidgets教程。wxWidgets是一个用于开发C++图形用户界面应用程序的跨平台的工具库或者说是一组框架。当你读完这套教程之后你将能够编写一些小的wxWidgets应用程序。

wxWidgets

wxWidgets是一个用来编写C++程序的GUI(图形用户界面)工具包。它是一个开源的、成熟的、跨平台的工具包。wxWidgets应用程序能在所有主流的操作系统上运行,Windows,Unix,Mac。这个项目由Julian Smart在1992年启动。wxWidgets提供各种各样的C++类来处理数据流、数据库、多线程、在线帮助、应用程序设置。wxWidgets由大量的窗口小部件组成。在官网(http://www.wxwidgets.org/)上能找到wxWidgets的社区。

C++编程语言

C++编程语言是最广泛使用的程序设计语言之一。它被用于许多著名的桌面程序像 MS Office、Adobe Flash、Firefox、Photoshop、3D Max。C++也在全球的电脑游戏应用中占主导地位。它也是最难的编程语言之一。在另一方面,现在使用C++来编程已经不同于10年前,有许多工具和各种各样的库使得编程简单很多。

程序设计语言

这些当前被广泛使用的程序设计语言。下面这个表格是TIOBE编程社区在2012年十一月的统计结果。我们可以看到,C++在世界上仍然属于相当受欢迎的编程语言。

Java是最广泛使用的编程语言,Java 比较擅长编写手机应用和各种各样的家用电器嵌入程序。每四个程序就有一个使用C++语言编写的。C++也是广泛应用的系统设计语言。

PHP在网络应用上处于支配地位。Java主要由大型组织使用,PHP主要是一些小公司或者个人在使用,PHP用于创建一些动态网络应用。

C#是在Microsoft.NET平台上使用的最主要的编程语言。(C# is followed in .NET by Visual Basic),它代表了RAD(Rapid Application Development)的普及。

Perl、Python、Ruby是最广泛应用的脚本语言。它们有很多相似点,它们是关系紧密的竞争对手。

Objective C 主要用于开发苹果手机上的软件。

跨平台的开发

如今,跨平台开发是一个时髦的词,大部分语言和库想要成为跨平台的。wxWidgets在一开始就作为一个跨平台的库来开发。大多数开发者在这些在这些库中间挑选,他们可能去网站上搜索,去使用QT、wxWidgets、Swing、SWT。QT是wxWidgets最主要的竞争对手。使用合适的工具做合适的软件是程序员(项目经理)要决策的最重要的事情之一。

以上是对wxWidgets的一个简单介绍。

[ZETCODE]wxWidgets教程一:介紹的更多相关文章

  1. Visual Studio 跨平台開發實戰(4) - Xamarin Android 基本控制項介紹 (转帖)

    前言 不同於iOS, Xamarin 在Visual Studio中針對Android, 可以直接設計使用者介面. 在本篇教學文章中, 筆者會針對Android的專案目錄結構以及基本控制項進行介紹, ...

  2. CRL快速开发框架系列教程一(Code First数据表不需再关心)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  3. 用Razor語法寫範本-RazorEngine組件介紹【转——非常好,可以用它来代替NVelocity】

    RazorEngine 官網網址:http://razorengine.codeplex.com 在找到RazorEngine之前曾經想過其他的方案,如T4與V8 Engine載jquery.temp ...

  4. Browser 與 Server 持續同步的作法介紹 (Polling, Comet, Long Polling, WebSocket)长连接

    對 Comet 的懵懂 記得兩年多前,第一次看到 Gmail 中的 GTalk 覺得很好奇:「咦?線上聊天且是 Google 的熱門系統,只用傳統的 AJAX 應該會操爆伺服器吧?」很幸運的,當時前公 ...

  5. NGUI系列教程一

    NGUI是Unity的一个插件,使用它来制作你的游戏UI必定将事半功倍.为什么这么说呢?首先我们说说GUI与NGUI的区别,GUI是Unity自带的绘制界面工具,它的成像原理是基于表层的,所以执行效率 ...

  6. Linux Kernel 排程機制介紹

    http://loda.hala01.com/2011/12/linux-kernel-%E6%8E%92%E7%A8%8B%E6%A9%9F%E5%88%B6%E4%BB%8B%E7%B4%B9/ ...

  7. COB(Chip On Board)的製程簡單介紹

    前面提及 COB 的生產與 IC 的封裝製程幾乎是一致的,除了把 leadframe 改成了 PCB,把封膠由 molding 改成 dispensing,少了 triming & marki ...

  8. PCB成型製程介紹

    PCB成型製程在電子構裝中所扮演的角色 下圖是電腦主機的內部組成 我們將以插在主機板上的一片 USB擴充卡來說明PCB成型製 程在電子構裝中所扮演的角色 PCB成型製程的子製程 USB擴充卡要插入主機 ...

  9. QR Code於台灣各行業的行銷應用案例介紹

    當走在東京的大街小巷時,在五花八門的廣告看板.雜誌.護照簽證.海關.宣傳品.廣告.旅遊和導覽手冊.產品包裝.甚至在餐廳菜單上,皆可看到上面有一組黑色神秘二維條碼圖案:QR Code,當看到有興趣的商品 ...

随机推荐

  1. 现代密码学应用的范例-PGP

    PGP(Pretty Good Privacy),是一个基于RSA公钥加密体系的邮件加密软件. 产生背景: 电子邮件在传输中使用SMTP协议存在这样的问题 1.无法保证邮件在传输过程中不被人偷看 2. ...

  2. Java内存模型JMM与可见性

    Java内存模型JMM与可见性 标签(空格分隔): java 1 何为JMM JMM:通俗地讲,就是描述Java中各种变量(线程共享变量)的访问规则,以及在JVM中将变量存储到内存和从内存中读取变量这 ...

  3. input file 模拟预览图片。

    首先申明,接下来内容只是单纯的预览图片,最多选择九张,并没有和后台交互,交互的话需要自己另外写js. 本来想写一个调用摄像头的demo,意外的发现input file 在手机端打开的话,ios可以调用 ...

  4. maya2105 - windows8 - numpy/scipy

    To compile numpy, create a site.cfg file in numpy's source directory with the following or similar c ...

  5. Python正则表达式学习

    1.Python的正则表达式需要用到re模块,有两个方法:match和search,match从第一个字符串开始匹配,search从任意字符串开始匹配,所以match比search严格. 如果匹配成功 ...

  6. C#winform程序安装时自动卸载新版本覆盖旧版本

    vs2005为winform程序做的安装包.在以有程序旧版本的机子上用新版本的安装包安装软件时提示  “以经安装该产品的另一个版本.无法继续安装此版本........” 在安装部署项目中设“Remov ...

  7. 数据添加到DataTable

    DataTable tblDatas = new DataTable("Datas");            DataColumn dc = null;              ...

  8. KVC - 键值编码

    [基本概念] 1.键值编码是一个用于间接访问对象属性的机制,使用该机制不需要调用存取方法和变量实例就可访问对象属性. 2.键值编码方法在OC非正式协议(类目)NSKeyValueCoding中被声明, ...

  9. git 常用命令行整理

    1.创建分支dev git branch dev 2.切换到dev分支 git checkout dev 3.创建并切换本地分支,分支名为dev git checkout -b dev 4.查看本地所 ...

  10. APP二维码微信扫描后无法下载的问题

    微信打开网址添加在浏览器中打开提示  2014-10-13  蔡宝坚  移动前端 使用微信打开网址时,无法在微信内打开常用下载软件,手机APP等.网上流传的各种微信打开下载链接,微信已更新基本失效,最 ...