杰瑞科技汇

C++ Builder教程从哪开始学?

C++ Builder 完整教程

目录

  1. 什么是 C++ Builder?
  2. 为什么选择 C++ Builder?
  3. 开发环境概览
  4. 第一步:创建您的第一个 "Hello, World!" 项目
  5. 核心概念:VCL 和 FMX
  6. 深入 VCL 开发
    • 1 使用窗体和组件
    • 2 事件处理
    • 3 对象检查器
    • 4 代码编辑器
  7. 常用组件介绍
  8. 数据访问与数据库开发
  9. 高级主题
  10. 学习资源与社区

什么是 C++ Builder?

C++ Builder 是由 Embarcadero 公司开发的一款快速应用程序开发工具,它允许开发者使用 C++ 语言来构建原生、高性能的桌面、移动、Web 和物联网应用程序。

C++ Builder教程从哪开始学?-图1
(图片来源网络,侵删)
  • 核心特点:它将强大的 C++ 编译器与一个功能丰富的可视化开发环境 紧密集成。
  • 工作方式:您可以通过拖拽组件(如按钮、文本框、数据网格等)来快速构建用户界面,然后编写 C++ 代码来处理业务逻辑、数据库交互等。
  • 底层技术:C++ Builder 的两大 UI 框架是 VCL(Visual Component Library)和 FMX(FireMonkey),VCL 主要用于 Windows 平台,而 FMX 是跨平台的框架,可用于 Windows、macOS、iOS、Android 等。

C++ Builder = C++ 语言 + 可视化 RAD 工具 + VCL/FMX 框架


为什么选择 C++ Builder?

  • 原生性能:编译后的应用程序是真正的原生代码,性能极高,没有中间层解释,特别适合计算密集型、图形密集型和高性能要求的场景。
  • 快速开发:RAD 环境极大地提高了开发效率,可视化设计、组件库和代码模板让开发者可以专注于业务逻辑,而不是重复搭建 UI。
  • 强大的数据库支持:内置了强大的数据库引擎(如 dbExpress),对 InterBase, MySQL, PostgreSQL, SQLite 等多种数据库有出色的支持,数据感知组件让数据库操作变得异常简单。
  • 跨平台能力:使用 FMX 框架,您可以为 Windows、macOS、iOS 和 Android 编写一次代码,部署到多个平台,而无需重写 UI 逻辑。
  • 现代化的 IDE:基于强大的 Delphi 和 C++Builder IDE,拥有代码补全、重构、调试、版本控制集成等现代开发所需的一切功能。
  • 庞大的组件生态系统:除了内置组件,还有来自 Embarcadero 和第三方开发者的大量第三方组件库,可以满足各种特殊需求。

开发环境概览

启动 C++ Builder 后,您会看到几个主要的窗口:

  • 主菜单栏:包含所有命令,如文件、编辑、视图、项目、运行等。
  • 工具栏:常用命令的快捷按钮。
  • 窗体设计器:您拖放组件、设计 UI 的地方。
  • 对象检查器:显示当前选中窗体或组件的属性和事件,这是 RAD 开发的核心。
    • 属性:组件的外观和行为(如 Text, Caption, Color, Width)。
    • 事件:组件可以响应的动作(如 OnClick, OnCreate, OnChange)。
  • 项目管理器:显示当前项目的所有文件(.cpp, .h, .dfm/.fmx 等)。
  • 代码编辑器:编写和管理 C++ 代码的地方。

第一步:创建您的第一个 "Hello, World!" 项目

这是每个新手的必经之路。

  1. 启动 C++ Builder
  2. 创建新项目:选择 File -> New -> VCL Forms Application - C++Builder (或者 FireMonkey HD Application - C++Builder 来体验跨平台),这会创建一个默认的窗体。
  3. 设计界面
    • 工具面板 中找到 Standard 选项卡。
    • 找到 TButton 组件,单击它,然后在窗体上单击一下,一个按钮就添加进去了。
    • 同样地,添加一个 TLabel 组件。
  4. 修改属性
    • 单击窗体,在 对象检查器Properties 标签页中,找到 Caption 属性,将其值从 Form1 改为 我的第一个窗口
    • 单击 Label1,将其 Caption 属性清空。
    • 单击 Button1,将其 Caption 属性改为 点击我
  5. 编写事件处理代码
    • 选中 Button1,在 对象检查器 中切换到 Events 标签页。
    • 双击 OnClick 事件右侧的空白处,C++ Builder 会自动跳转到代码编辑器,并生成一个事件处理函数的框架:
      void __fastcall TForm1::Button1Click(TObject *Sender)
      {
          // TODO: 在此处添加您的处理程序代码
      }
    • // TODO... 下面添加一行代码:
      Label1->Caption = "Hello, C++ Builder World!";
  6. 运行程序:按 F9 键,或者点击工具栏上的绿色运行按钮。

您会看到您的应用程序窗口弹出,点击“点击我”按钮,标签的文字就会改变,恭喜,您已经成功创建了您的第一个 C++ Builder 程序!

C++ Builder教程从哪开始学?-图2
(图片来源网络,侵删)

核心概念:VCL 和 FMX

这是理解 C++ Builder 的关键。

特性 VCL (Visual Component Library) FMX (FireMonkey)
目标平台 Windows (原生) 跨平台 (Windows, macOS, iOS, Android, Linux)
底层渲染 使用 Windows GDI/GDI+ 进行绘制 使用 OpenGL, DirectX, Metal 等现代图形 API 进行硬件加速渲染
外观 外观与操作系统原生风格一致 可以创建跨平台且外观一致的现代化 UI,支持复杂的视觉效果(如透明、3D)
适用场景 传统的 Windows 桌面应用程序,需要深度集成 Windows 系统 现代化的跨平台应用,移动应用,游戏,数据可视化,UI 需要酷炫效果
窗体文件 .dfm (Delphi Form) .fmx (FireMonkey Form)

建议

  • 如果您的应用只运行在 Windows 上,并且希望界面与系统风格完全融合,VCL 是最佳选择,它更成熟、稳定,与 Windows API 结合紧密。
  • 如果您希望一次编码,多端运行,或者需要更现代、更炫酷的 UI,请选择 FMX

深入 VCL 开发

假设我们选择 VCL 进行开发。

1 使用窗体和组件

  • 窗体:是应用程序的窗口,是所有组件的容器。
  • 组件:是构成 UI 的基本元素,如按钮、编辑框、菜单等。
  • 非可视组件:在运行时不可见,但提供重要功能,如 TTimer (定时器), TADOConnection (数据库连接), TOpenDialog (打开文件对话框)。

2 事件处理

事件是驱动应用程序交互的核心,用户操作(点击、输入)或系统消息(窗口创建、关闭)都会触发事件,您需要为事件编写处理函数来响应这些操作。

3 对象检查器

这是 RAD 的灵魂,您可以:

  • 设置属性:在设计时修改组件的外观和行为。
  • 创建事件处理程序:快速导航到代码并编写事件逻辑。

4 代码编辑器

  • 代码补全:输入 或 -> 后,IDE 会列出所有可用的属性和方法。
  • 代码模板:输入代码片段的前几个字母,按 Ctrl+J 可以快速插入模板。
  • 导航:使用 F12 可以在窗体设计和代码定义之间快速切换。

常用组件介绍

  • TButton: 按钮,最常用的交互组件。
  • TEdit: 单行文本框,用于输入少量文本。
  • TMemo: 多行文本框,用于输入或显示大段文本。
  • TLabel: 标签,用于显示静态文本。
  • TCheckBox: 复选框,提供“是/否”选择。
  • TRadioButton: 单选按钮,在一组选项中只能选择一个。
  • **TComboBox`: 下拉组合框,既可以输入也可以从列表中选择。
  • **TListBox`: 列表框,显示一个项目列表供用户选择。
  • **TStringGrid`: 字符串网格,用于显示和编辑表格数据。
  • TTimer: 定时器组件,在指定的时间间隔触发 OnTimer 事件。
  • **TOpenDialog / TSaveDialog`: 打开和保存文件的标准对话框。
  • **TMainMenu / TPopupMenu`: 创建主菜单和弹出菜单。

数据访问与数据库开发

C++ Builder 在数据库方面非常强大。

  1. 数据库连接

    • 使用 dbExpress 驱动(跨平台、轻量级)或 BDE(传统、功能强大)或 ADO(基于 Windows)。
    • 在窗体上放置一个 TSQLConnection 组件,设置其 ConnectionName, DriverName, Database 等属性来连接到数据库。
  2. 数据集

    • TSQLDataSet / TClientDataSet:代表数据库中的一张表或一个查询结果。
  3. 数据源

    • TDataSource:作为 UI 组件和数据集之间的桥梁。
  4. 数据感知组件

    • 这是 VCL 的魔力所在,您可以将 TDBEdit, TDBGrid, TDBNavigator 等组件直接与 TDataSource 关联。
    • 一旦关联,这些组件就能自动显示、编辑数据库中的数据,无需您编写任何代码来读取或写入。

简单流程数据库 -> TSQLConnection -> TSQLDataSet -> TDataSource -> TDBGrid (在界面上)


高级主题

  • 多线程:使用 TThread 类来创建后台线程,避免在耗时操作(如网络请求、复杂计算)时冻结 UI。
  • 自定义组件:继承现有组件,创建满足特定需求的全新组件。
  • 第三方控件:从 Embarcadero Marketplace 或第三方网站(如 Torry's Delphi Pages)获取海量现成的控件,快速扩展功能。
  • REST 客户端:内置 REST 客户端组件,轻松调用 Web API。
  • 样式:在 FMX 中,可以使用样式来统一应用的外观和感觉。

学习资源与社区

  • 官方文档:Embarcadero 官网有最权威的文档和帮助文件。
  • Embarcadero DocWiki: https://docwiki.embarcadero.com/RADStudio/en/Home
  • C++ Builder 官方博客:获取最新资讯和教程。
  • 社区论坛:遇到问题,这里是最好的求助地方。
  • YouTube 频道:搜索 "Embarcadero Technologies" 或 "C++ Builder",有很多官方和社区的教学视频。
  • GitHub: 搜索 "C++ Builder samples",可以找到大量示例代码。

C++ Builder 是一个功能强大且独特的开发工具,它完美地平衡了 C++ 语言的底层控制力和 RAD 工具的开发效率。

  • 对于 C++ 开发者:它提供了一条快速构建 Windows 桌面应用和跨平台应用的新路径,无需深入了解复杂的 Win32 API 或跨平台 UI 库。
  • 对于 Delphi 开发者:C++ Builder 是将现有 Delphi 技能和知识迁移到 C++ 生态系统的最佳桥梁。

希望这份教程能帮助您开启 C++ Builder 的学习之旅!从创建一个简单的项目开始,逐步探索其丰富的功能,您会发现它是一个令人惊叹的开发利器。

分享:
扫描分享到社交APP
上一篇
下一篇