C++Builder入门

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

下面都是一些C++Builder快速上手的资料,当然是转载的啦。。

1. C++ Builder 网上资源

C++ Builder 研究
http://www.ccrun.com/

C++ Builder
程序员
http://mybcb.diy.myrice.com/

电脑学习 C++ Builder 版块
http://www.itcomputer.com.cn/Programs/C/CB/

c++ Builder
快捷键大全:
http://www.itcomputer.com.cn/Programs/C/CB/200512/11211.html

C++ Builder IDE
使用技巧:
http://www.itcomputer.com.cn/Programs/C/CB/200512/11199.html

---------------------------------------------------------------------------

2. C++ Builder
里的快捷键

这里只是一个摘要式的说明,摘出了我认为比较有用也比较常用的,详情请参考:
http://www.itcomputer.com.cn/Programs/C/CB/200512/11211.html
说明:其中的区块操作快捷键要在选定某块之后才能起作用。

名称作用备注
系统:
F3 查找下一个
F5 设置/取消断点
F7 跟踪(进入子程序)
F8 单步(不进入子程序)
F9 运行工程,包括了编译
F11 切换到对象查看器
F12 切换设计窗体和代码窗口很有用,特别是在窗口互相覆盖的时候
Ctrl+F2 结束调试或运行
Ctrl+F5 设置Watch变量
Ctrl+F9 编译工程
Alt+F9 编译单元

代码自动完成类:
Ctrl+J 代码模板很有用,尤其是对代码规范而言
Ctrl+Space 代码补全很有用,可以省很多敲键盘和查错的时间
这个因为跟 Windows 默认的中英文输入法切换快捷键冲突,所以需要作如下设置:
1) 右键点击任务栏上的输入法图标,选择设置
2) 在跳出的窗口中点击键设置按钮;
3) 在跳出的窗口中选中中文(简体)输入法 - 输入法/非输入法切换,勾选启用按键顺序,然后点确定即可;

编辑类:
Ctrl+C 复制基本快捷键
Ctrl+V 粘贴基本快捷键
粘贴大段代码时请特别注意,很多问题来源于复制粘贴。
Ctrl+X 剪切基本快捷键
Ctrl+S 保存基本快捷键
Ctrl+Home 跳到文件开头较有用
Ctrl+End 跳到文件结尾较有用
Ctrl+Left 跳到上一个字较有用
Ctrl+Right 跳到下一个字较有用
Ctrl+Up 鼠标位置不动,滚动条上移
Ctrl+Down 鼠标位置不动,滚动条下移
Ctrl+Y 删除一行较有用,减少无谓的空行,有助于代码规范
Ctrl+Shift+Y 删除到行尾
Ctrl+T 删除到字尾
Ctrl+Shift+I 块增加一级缩进很有用,有助于代码规范
Ctrl+Shift+U 块减少一级缩进很有用,有助于代码规范
Ctrl+K+I Ctrl+Shift+I
Ctrl+K+U
Ctrl+Shift+U

---------------------------------------------------------------------------

3.
编辑器选项设置

主菜单里的“Tools” -> “Editor Options...” 或者在编辑器窗口右键点击,在弹出的菜单里选择“Properties”

---------------------------------------------------------------------------

4.
Form 不自动创建

在主菜单里的“Project” -> “Options...” -> “Forms”中,将不想要其自动启动的 Form “Auto-created forms”移到“Available forms”即可。

---------------------------------------------------------------------------

5.
关掉数据库的登录窗口

TADOConnection 控件的 LoginPrompt 属性设为 false

---------------------------------------------------------------------------

6.
设置密码框

将文本框的 PasswordChar 属性设为 * (其他字符也行,除了 #0 之外)。这里设为啥,输入密码时就显示啥。

---------------------------------------------------------------------------

7.
登录窗口先于多文档(MDI)主窗口显示

在项目源文件(Project Source)里先 new 一个登录窗口,登录成功再创建主窗口。如下所示:
Application->Initialize();
frmLogin = new TfrmLogin(Application);
frmLogin->ShowModal();
Application->CreateForm(__classid(TfrmMain), &frmMain);
Application->Run();

剩下的事情就是在 TfrmLogin 的登录成功事件中 Close() 关闭登录窗口,登录失败事件中 Application->Terminate() 关闭主程序。

---------------------------------------------------------------------------

8.
字符串下标

AnsiString, String 的下标都是从一开始的,从 1 length()

---------------------------------------------------------------------------

9.
关于 TEdit 控件的复合赋值

+= TEdit 控件的 Text 属性赋值无效。编译能通过,但赋不上值。

---------------------------------------------------------------------------

10. OnKeyPress
OnKeyDown 的区别

OnKeyPress是经过系统转换后的按键,根据ASCII码区分的,比方说你按了Shift+a,则相当于输入了A。这个函数相当于处理WM_CHAR消息。

OnKeyDown没有经过系统转换,是根据虚拟按键值来判断的,比方说你按下了Ctrl+F3,则相当于在控制字符方面输入了Control,并按下了VK_F3这个虚拟键。这个函数相当于处理WM_KEYDOWN消息。

---------------------------------------------------------------------------

11.
MDI程序不重复打开相同子窗口

1) 先写一个 openForm 函数,作用是判断将要创建的子窗口是否已存在。若已存在,则显示之,并将鼠标焦点转移到该窗口,并返回 true;若不存在,则返回 false

bool __fastcall TfrmMain::openForm(TForm *frm)
{
bool frmExist = false;

//
判断该窗口是否已经被创建。
if (frm == NULL)
{
return false;
}
for (int i = 0; i < Screen->FormCount; i++)
{
if (Screen->Forms[i]->ClassType() == frm->ClassType())
{
frmExist = true;
break;
}
}
if (false == frmExist)
{
return false;
}

//
如果此窗口已经被创建,则判断该窗口当前状态,
// 如果其当前状态为最小化状态或隐藏状态,则显示之。
if (wsMinimized == frm->WindowState)
{
ShowWindow(frm->Handle, SW_SHOWNORMAL);
}
else
{
ShowWindow(frm->Handle, SW_SHOWNA);
}
if (! frm->Visible)
{
frm->Visible = true;
}

//
将光标的焦点转移到此窗口上。
frm->BringToFront();
frm->SetFocus();

return true;
}

2)
在创建子窗口时,先调用该函数。若返回 false (即不存在),则创建之。

if (false == openForm(formName))
{
formName = new formType(Application);
}

---------------------------------------------------------------------------

12. ADOQuery
的使用

★一个例子
if (! ADOConnection1->Connected)
{
ADOConnection1->Connected = true;
}
ADOQuery1->Active = false;
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT * FROM table_name");
ADOQuery1->Active = true;
Edit1->Text = ADOQuery1->RecordCount;
Edit2->Text = ADOQuery1->Fields->Fields[1]->AsString;
ADOQuery1->Next();
Edit3->Text = ADOQuery1->Fields->Fields[1]->AsString;

★往数据集里添加纪录
TADOQuery1->Edit();
TADOQuery1->Append();

★从数据集里删除纪录
TADOQuery1->Edit();
TADOQuery1->Delete();

★保存修改到数据集
TADOQuery1->Edit();
TADOQuery1->Post();

★取消对数据集的修改
TADOQuery1->Edit();
TADOQuery1->Cancel();
TADOQuery1->Close();

---------------------------------------------------------------------------

13.
关闭窗口事件

OnClose 消息阶段的事件,控制关闭时执行什么动作。这里也可以控制不允许关闭窗口,方法是将 Action 参数设为 caNone
OnCloseQuery 处理阶段的事件,控制是否允许关闭窗口。如果不允许关闭,将 CanClose 参数设为 false

---------------------------------------------------------------------------

14.
如何让窗口右上角的按钮不可用?

1) 直接重载窗口过程将关闭功能屏蔽
头文件
class TForm1:public TForm
{
private:
public:
protected:
virtual void __fastcall WndProc(TMessage &Message)
}
源文件
void __fastcall TForm1::WndProc(TMessage &Message)
{
if(Message.Msg==WM_SYSCOMMAND)
{
if(Message.WParam==SC_CLOSE)
{
Message.WParam=0;
}
}
}

2)

HMENU hSysMenu = GetSystemMenu(Handle,0);//得到系统菜单句柄
EnableMenuItem(hSysMenu,SC_CLOSE,MF_DISABLED);//使"关闭"项不可用.此时"关闭"按钮变灰,但系统菜单中的"关闭"没有变灰,只是不能选择.
第二句也可以改为:
EnableMenuItem(hSysMenu,SC_CLOSE,MF_GRAYD);
与上面不同的是,这时系统菜单中的"关闭"项也变灰了.


HWND m_hWnd = GetSystemMenu(Form_shuo->Handle,false); //关闭按钮
EnableMenuItem(m_hWnd,SC_CLOSE,MF_GRAYED);

---------------------------------------------------------------------------

15.
窗口最大化不正常

有时候在窗口界面设置里将 WindowState 属性直接设为 wsMaximized 得到的最大化效果不理想(比如控件没有像设想的那样靠右排列、树视图下边缘超出可视范围等),这时候可以通过在窗口的 Show ShowModal 语句后加上设置 WindowState 属性为 wsMaximized 的语句来得到理想的效果。

---------------------------------------------------------------------------

16.
隐藏程序主窗体

程序一开始就隐藏窗口,在工程名.cpp 中修改:
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->ShowMainForm = false;
ShowWindow(Application->Handle, SW_HIDE);
Application->Run();

想显示程序时执行下面这两行代码:
ShowWindow(Application->Handle, SW_SHOW);
Application->MainForm->Visible = true;

注:根据我的经验,要想在程序一开始隐藏主窗体,只要在工程名.cpp 文件中加入
Application->ShowMainForm = false;
即可,其他地方想隐藏只要执行 Hide() 方法;而想要显示时,只要执行 Show() 方法即可。

---------------------------------------------------------------------------

17.
由弹出的右键菜单的菜单项获取触发弹出事件的组件(多个组件关联到一个右键菜单时有用)

例:
void __fastcall TSomeForm::pmiSomeClick(TObject *Sender)
{
TMenuItem *mi = static_cast<TMenuItem *>(Sender);
TPopupMenu *pm = static_cast<TPopupMenu *>(mi->GetParentComponent());
TComponent *comp = pm->PopupComponent;

//
接下来就可以对 comp 进行操作了。
...
}

---------------------------------------------------------------------------

18.
让右键也能选中 TreeView,并且正确响应相应节点(TreeView->Selected 节点自动设为右击的节点)

首先将 TreeView RightClickSelect 属性设为 true,再设置其 OnContextPopup 事件如下所示:
void __fastcall TSomeForm::tvSomeContextPopup(
TObject *Sender, TPoint &MousePos, bool &Handled)
{
TTreeView *tv = static_cast<TTreeView *>(Sender);

//
取鼠标点的地方的TTreeNode
TTreeNode *node = tv->GetNodeAt(MousePos.x, MousePos.y);

if (NULL == node)
{
//
鼠标点的地方没有TTreeNode,菜单不显
Handled = true;
}
else
{
//
右键选中TTreeNode
tv->Selected = node;
}
}

---------------------------------------------------------------------------

19.
在右键菜单弹出之前对右键菜单进行设置

OnContextPopup 事件中设置。

---------------------------------------------------------------------------

20.
将英文提示文字(Yes, No, OK, Cancel...)修改为中文

1) BCB6 安装目录的 Source\Vcl 目录下找到 consts.pas,并复制一份到你的工程目录下;
2) 将刚拷过来的 consts.pas 文件中提示文字由英文改为中文;
3) 在当前工程中加入刚才修改过的 dialogs.pas,具体操作:Project-->Add to Project-->找到该文件,添加进来即可;
4) 设置一下工程选项:Project-->Options-->Packages-->取消 Build with runtime packages 前面的对钩,确定;
5) 重新编译运行工程即可。

出处:http://pc.8s8s.com/pc/pc12990.htm
参考:http://www.ccrun.com/article.asp?d=w74av8&i=620(通过消息实现自定义输入框)
注:其他想改动源代码并且应用到现有的 BCB 工程中去的情况估计也类似,但没测试过。

---------------------------------------------------------------------------

21.
显示和屏蔽任务栏

// 屏蔽任务栏
ShowWindow(FindWindow("Shell_TrayWnd", NULL), SW_HIDE);

//
显示任务栏
ShowWindow(FindWindow("Shell_TrayWnd", NULL), SW_SHOW);

---------------------------------------------------------------------------

22.
禁用和启用任务栏

// 禁用任务栏
EnableWindow(FindWindow("Shell_traywnd", NULL), false);

//
启用任务栏
EnableWindow(FindWindow("Shell_traywnd", NULL), true);

---------------------------------------------------------------------------

23.
自动隐藏任务栏

先定义如下函数:
void __fastcall TfrmSomeForm::autohideTaskBar(bool isAutohide)
{
APPBARDATA AppBarData;
memset(&AppBarData, 0, sizeof(APPBARDATA));
AppBarData.cbSize = sizeof(APPBARDATA);
AppBarData.hWnd = FindWindow("Shell_TrayWnd", NULL);

if (isAutohide)
{
//
设定任务栏自动隐藏
AppBarData.lParam = ABS_AUTOHIDE;
}
else
{
//
取消任务栏的自动隐藏
AppBarData.lParam = ABS_ALWAYSONTOP;
}

SHAppBarMessage(ABM_SETSTATE, &AppBarData);
}

要自动隐藏任务栏时,如下调用该函数:
autohideTaskBar(true);

要取消任务栏的自动隐藏时,如下调用该函数:
autohideTaskBar(false);

---------------------------------------------------------------------------

24.
显示和屏蔽桌面图标

// 屏蔽桌面图标
ShowWindow(FindWindow("ProgMan", NULL), SW_HIDE);

//
显示桌面图标
ShowWindow(FindWindow("ProgMan", NULL), SW_SHOW);

---------------------------------------------------------------------------

25.
屏蔽系统热键

1) 方法一,比较彻底,除 Ctrl + Alt + Del 之外全被屏蔽。

在程序中设置如下全局变量和全局函数:

// 钩子句柄
HHOOK OldHook;

long CALLBACK KeyProc(int code, WPARAM wParam, LPARAM lParam)
{
KBDLLHOOKSTRUCT *pkbhs;

if (code < 0)
{
return CallNextHookEx(OldHook, code, wParam, lParam);
}

pkbhs = (KBDLLHOOKSTRUCT*) lParam;

if (pkbhs->vkCode == 91 || pkbhs->vkCode == VK_RWIN)//
封锁 win
{
return 1;
}

if (pkbhs->vkCode == VK_ESCAPE && GetAsyncKeyState(VK_CONTROL) < 0)
{
return 1; //
封锁 CTRL+ESC
}

if (pkbhs->vkCode == VK_TAB && pkbhs->flags&LLKHF_ALTDOWN)
{
return 1; //
封锁 ALT+TAB
}

if (pkbhs->vkCode == 115 && pkbhs->flags & LLKHF_ALTDOWN)
{
return 1; //
封锁 ALT+F4
}

if (pkbhs->vkCode == VK_ESCAPE && pkbhs->flags & LLKHF_ALTDOWN)
{
return 1; //
封锁 ALT+ESC
}

if (pkbhs->vkCode == VK_SPACE && GetAsyncKeyState(VK_CONTROL) < 0)
{
return 1; //
封锁 CTRL+ ' '
}

return CallNextHookEx(OldHook, code, wParam, lParam);
}

然后就可以屏蔽和启用系统热键了:

// 屏蔽热键
OldHook = SetWindowsHookEx(WH_KEYBOARD_LL, (HOOKPROC)KeyProc, HInstance, 0);
//
启用热键
UnhookWindowsHookEx(OldHook);

2)
方法二,只能屏蔽部分热键。

// 屏蔽系统热键
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, &temp, 0);
RegisterHotKey(frmSome->Handle, 1, MOD_ALT, VK_TAB);
RegisterHotKey(frmSome->Handle, 2, MOD_ALT, VK_F4);
RegisterHotKey(frmSome->Handle, 3, MOD_CONTROL, VK_ESCAPE);
RegisterHotKey(frmSome->Handle, 4, MOD_ALT, VK_ESCAPE);

//
恢复系统热键
SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, &temp, 0);
UnregisterHotKey(frmSome->Handle, 1);
UnregisterHotKey(frmSome->Handle, 2);
UnregisterHotKey(frmSome->Handle, 3);
UnregisterHotKey(frmSome->Handle, 4);

---------------------------------------------------------------------------

26.
禁止拖动窗口

1) 在类定义的 public (不确定是不是一定要 public) 部分加上如下声明:
void __fastcall WMKillFocus(TMessage &msg);
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_NCHITTEST, TMessage, WMKillFocus);
END_MESSAGE_MAP (TForm)

2)
函数 WMKillFocus 实现如下:
void __fastcall TfrmSomeForm::WMKillFocus(TMessage &msg)
{
TForm::Dispatch(&msg);
if (msg.Result == HTCAPTION)
msg.Result = HTCLIENT;
}

---------------------------------------------------------------------------

27.
关于画图

1) TPaintBox 加滚动条方法
TPaintBox 置于 TScrollBox 之上,然后在画图时设定 TScrollBox HorzScrollBar->Range VertScrollBar->Range 即可。

2) TImage 加滚动条方法
TImage 置于 TScrollBox 之上,然后在画图时设定 TScrollBox HorzScrollBar->Range VertScrollBar->Range,同时还需设定 TImage Picture->Bitmap->Width Picture->Bitmap->Height

3) 保存 TPaintBox 图像的方法

Graphics::TBitmap *savePic = new Graphics::TBitmap;
TRect Dect, Sect;
Dect = Rect(0, 0, pb->Width, pb->Height);
Sect = Rect(0, 0, pb->Width, pb->Height);
pb->Canvas->Brush->Style = bsClear;
savePic->Width = pb->Width;
savePic->Height = pb->Height;
savePic->Canvas->CopyRect(Dect, pb->Canvas, Sect);
savePic->SaveToFile("c:\\abc.bmp");
delete savePic;

以上方法的缺点是无法保存超出屏幕大小的图像。

4) 保存 TImage 图像的方法

img->Picture->SaveToFile("c:\\a.jpg");

5) TImage
图像过大导致空间不足错误的处理方法

设一个小点的格式(默认值是 pfDevice)
img->Picture->Bitmap->PixelFormat = pf1bit;

6)
画笔颜色(上一条的副作用)

如下语句将使得 TImage 变成黑白图片:
img->Picture->Bitmap->PixelFormat = pf1bit;
如果想恢复彩色,应该设成大一些的格式(pf4bit 以上)
img->Picture->Bitmap->PixelFormat = pf4bit;

---------------------------------------------------------------------------

28.
压缩图片

BMP 格式图片压缩为 JPG 格式:

TJPEGImage *jpg = new TJPEGImage();
jpg->PixelFormat = jf8Bit; ;//
设置像素格式
jpg->Assign(bmp);
jpg->Compress();
jpg->SaveToFile("C:\\a.jpg");
delete jpg;

要记得导入头文件:
#include <jpeg.hpp>

---------------------------------------------------------------------------

29.
配置备份

1. 将注册表下
HKEY_CURRENT_USER\Software\Borland\C++Builder\6.0
导出为 reg 文件,这里边包含了大部分的设置,包括语法颜色什么的。恢复时导入注册表文件即可。

2. bcb 目录下 Bin 下的 Codding.dst Debugging.dst 备份。这是 bcb 编写代码和 debug 时的窗体位置配置。恢复时将文件复制到 bin 目录即可

美国Embarcadero公司正式发布2023 RAD Studio Delphi C++ Builder 12 Athens Embarcadero 非常高兴地宣布发布 RAD Studio 12 Athens 以及 Delphi 12 和 C++Builder 12。RAD Studio 12 Athens 版本包含令人兴奋的新功能,为该产品的未来奠定了基础。 阅读详情

相关推荐

在Borland C++ Builder6中写DLL初步入门

在BORLAND C++ BUILDER6 写DLL初步实验. 虽然简单, 但是基本弄清了点眉目: 主要步骤: 1 写一个DLL   2 写一个APP来调用DLL   1. 写一个DLL FILE->NEW-> DLL WIZARD 选C++ 及VCL 这时根据向导生成了一个DLL框架, 看上去很像一个普通的app,  下面完善并修改代码, 定义自己的一个DLL函数 myindlltest

小桥加加的IT博客 1991

Borland-C++-Builder6.0简易实例教程.pdf

Borland C++Bilder 6.0 是 Interprise(Borland)公司推出的基于 C++ 语言的 快速应用程序开发(Rapid Application Development, RAD)工具,它是最先进 的开发应用程序的组件思想和面向对象的高效语言 C++融合的产物。 C++Builder 充分利用了已经发展成熟的 Delphi 的可视化组件库(Visual Component Library, VCL),吸收了 Borland C++ 6.0 这个优秀编译器的诸多优点。 C++Builder 结合了先进的基于组件的程序设计技术,成熟的可视化组件库和优 秀编译器,调试器。发展到 6.0 版本, C++Builder 已经成为一个非常成熟的可 视化应用程序开发工具,功能强大而且效率高。

手把手教你用C++ Builder本地部署Deepseek,小白也能轻松上手!

通过本文详细的步骤介绍,从前期对 C++ Builder 和 Deepseek 的深入了解,到准备所需工具和环境,再到一步步完成部署步骤、进行测试与优化,并解决可能遇到的常见问题,我们全面地掌握了在 C++ Builder 中实现 Deepseek 本地部署的方法。这一过程中,我们充分利用了 C++ Builder 强大的开发功能,如可视化设计界面、高效的代码编辑和调试工具,以及 Deepseek 在自然语言处理方面的卓越能力,使得两者相互结合,发挥出更大的优势。// 将输入文本转换为模型所需的张量形式。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 2887

C++设计模式之生成器模式(Builder

生成器是一种创建型设计模式,使你能够分步骤创建复杂对象。该模式允许你使用相同的创建 代码生成不同类型和形式的对象。假设有这样一个复杂对象,在对其进行构造时需要对诸多成员变量和嵌套对象进行繁复的初始化工作。这些初始化代码通常深藏于一个包含众多参数且让人基本看不懂的构造函数中;甚至还有更糟糕的情况,那就是这些代码散落在客户端代码的多个位置。如果为每种可能的对象都创建一个子类,这可能导致程序过于复杂:例如, 我们来思考如何创建一个房屋(House)对象。

波风水门 2619

[原创]仅需小小的改变,C++ Builder 12的代码完成提示即可完美工作.

将近20年的期盼, C++ Builder 12终于在2023年11月08日发布了. 为什么我那么激动? 因为C++ Builder才是C/C++领域中真正意义的快速开发工具.

其实我不是代码教父,我只是猪头三 2802

C++ Builder 6入门与进阶资源文件介绍

C++ Builder 6入门与进阶资源文件介绍 去发现同类优质开源项目:https://gitcode.com/ 资源文件简介 《C++ Builder 6入门与进阶》是一本专为C++ Builder 6.0开发者编写的教程。全书详细介绍了C++ Builder 6.0的开发环境、VCL组件的使用以及图形图像、数据库等方面的应用编程技巧,旨在帮助读者快速掌握C++ Builder 6.0软件开发...

gitblog_06766的博客 237

CBuilder6入门与进阶资源文件介绍:C++ Builder 6.0开发者的必备教程

CBuilder6入门与进阶资源文件介绍:C++ Builder 6.0开发者的必备教程 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在软件开发领域,C++ Builder 6.0以其高效的开发环境和丰富的组件库,一直受到开发者的青睐。今天,我们将为您介绍一款专为C++ Builder 6.0开发者设计的资源文件——《C++ Builder 6入门与进阶》。这是一本...

gitblog_06765的博客 343

C++ Builder入门第一例

Project1.cpp:#include #include class Tmyform : public TForm //定义一个窗体类{__published: //VCL组件成员及事件处理函数 TLabel *Label1,*Label2; TEdit *Edit1; TButton *btnOk,*btnExit; void __fastcall b

养心殿 1648

1、探索 C++Builder 6:从入门到应用

本文全面介绍了C++Builder 6的集成开发环境、核心功能与新特性,涵盖主窗口、组件面板、对象检查器等IDE组成部分,并深入探讨了WebSnap、BizSnap、DataSnap增强及STLPort支持等技术更新。文章详细讲解了项目创建流程、支持的项目类型、用户界面设计技巧,以及C++高级语言特性在C++Builder中的应用。同时,系统解析了VCL架构、对象继承关系、运行时类型信息(RTTI)、动作机制、拖放操作、日期时间和文件目录管理等高级功能,帮助开发者从入门到精通,高效构建企业级Windows和

food6的博客 57

3、C++Builder 6开发入门指南

本文介绍了C++Builder 6的开发入门知识,涵盖项目创建与配置、组件与包的使用、常用项目类型及用户界面构建等内容。通过一个简单的Hello World示例,详细演示了从项目创建、组件添加、事件处理到构建运行的完整流程,并总结了项目操作步骤、组件属性设置以及开发中的注意事项和优化技巧,帮助开发者快速掌握C++Builder 6的基本开发方法。

food6的博客 106

1、探索C++Builder 6:从入门到实践

本文深入介绍了C++Builder 6这款强大的快速应用开发(RAD)工具,涵盖从安装配置到创建首个Windows应用程序的全流程。同时,文章还探讨了WebSnap和DataSnap框架的应用、项目管理和优化策略,以及网络编程基础,帮助开发者全面掌握C++Builder 6的核心功能与进阶技巧。

ujm5678901的博客 293

C++ Builder 6.0:可视化编程入门与经典RAD开发实战指南

可视化编程通过拖拽控件和属性设置,让开发者能快速构建图形用户界面(GUI),其核心原理是基于事件驱动的消息循环机制。这种技术显著降低了桌面应用开发的门槛,提升了开发效率,尤其适合初学者快速建立编程信心和直观理解程序运行逻辑。在工程实践中,RAD(快速应用程序开发)工具将可视化设计与编程语言深度结合,实现了“所见即所得”的开发体验。C++ Builder 6.0作为经典的RAD工具,完美融合了C++语言能力与高效的VCL组件库,让开发者无需深入操作系统API细节,即可专注于业务逻辑实现。其简洁的环境和成熟的封

weixin_33841503的博客 466

Borland C++ Builder 6 实战教程:从入门到精通

本文还有配套的精品资源,点击获取 简介:Borland C++ Builder 6(BCB6)是一个为Windows应用开发定制的C++集成开发环境。本教程深入介绍了BCB6的操作技巧、特点以及与其他开发工具的比较,目的是助开发者高效使用此工具。教程包含了环境配置、项目创建、代码编辑、组件使用和编译调试等实用操作,并对BCB6快速开发、面向对象编程、数据库支持、性能优化和扩...

weixin_42234168的博客 3816

C++ builder :关键入门 AnsiString

其实是一个类(class),不过,它并不归属于VCL的框架,不是派生于TObject. 该类封装了C,C++里字符串的大多操作,并有所发展。方便了C++程序员在程序中使用字符串。下面挑典型和重要的说。         第一: 现在你不用(显式地)为字符串管理内存了:     AnsiString name = "Mike";     ShowMessage(name); //显示

ghw的专栏 2378

C++ Builder 6程序设计从入门到实战教程

C++程序由头文件(.h)和源文件(.cpp)组成,通过预处理、编译、汇编和链接四阶段生成可执行文件。main()函数是程序入口,每个语句以分号结尾,代码块用花括号{}包裹。#include <iostream> // 预处理器指令,包含标准输入输出库// 输出语句return 0;// 返回退出状态码说明#include引入头文件,std::cout使用标准命名空间中的输出流对象,整个程序遵循自顶向下执行逻辑,理解该结构是掌握后续面向对象与VCL开发的基础。

weixin_42611177的博客 475

Tuxedo 入门 C++Builder下的Sample

一、配置文件 [code="cpp"] # (c) 2003 BEA Systems, Inc. All Rights Reserved. #ident "@(#) samples/atmi/simpapp/ubbsimple $Revision: 1.5 $" #Skeleton UBBCONFIG file for the TUXEDO Simple Application....

162

C++ 程序员入门要多久?

C++ 入门要多久

sukeman的博客 281

C++builder中的人工智能(1)AI技术入门简介

人工智能,也称为AI,指的是在机器中模拟人类智能,这些机器被编程为像人类一样思考并模仿他们的行为。这个术语也可以应用于任何表现出与人类心智相关的特征的机器,如学习和解决问题。。除了AI这个术语,我们还应该添加这些术语。机器学习ML)是研究计算机算法自动通过经验改进的学科。虽然我们所有的广告都说智能或AI支持的东西,但实际上还没有AI。我们将所有与AI相关的事物称为AI技术。AI这个术语在其定义中可能与人工通用智能也称为强AI有关,还有**人工生物智能(ABI)**这个术语,它试图模拟‘自然’智能。

caridle的专栏 1270

com编程入门(转自C++ Builder研究)

本文的目的是为刚刚接触COM的程序员提供编程指南,并帮助他们理解COM的基本概念。内容包括COM规范简介,重要的COM术语以及如何重用现有的COM组件。本文不包括如何编写自己的COM对象和接口。         COM即组件对象模型,是Component Object Model 取前三个字母的缩写,这三个字母在当今Windows的世界中随处可见。随时涌现出来的大把大把的新技术都以COM为基础。各

西风狂诗曲 1613
上一篇: C++对继承的一些总结
下一篇: c++模版小结
lzkIT
博客等级 码龄14年 23粉丝 44原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值