C++ Builder 界面开发

C++ Builder 6.0 界面实例开发
实例1 界面图案演示
实例2 创建标题栏在左边的窗口界面
实例3 创建超级连接界面
实例4 创建不规则窗口界面
实例5 创建可扩展对话框界面
实例6 创建NEO Skin 窗口界面
实例7 创建Windows2000 透明窗口界面
实例8 创建自画弹出式菜单界面
实例9 创建自画主菜单界面
实例10 创建自画窗口背景界面


实例1 界面图案演示


实例目标

本实例作来本书的第一个实例,主要让大家轻松地学习本书,让大家先有一个感觉,编
程其实是一个很美的事情。

实现技术

主要用两函数MoveTo 和LineTo 实现。设置窗口的颜色为clNone 。
代码如下:
void __fastcall TfrmMain::FormPaint(TObject *Sender)
{

double x1,y1,x2,y2;

const int nScale = 100;

Canvas->Pen->Color = clYellow;// 设置FORM 界面的画笔颜色。

for (int i=0; i<720; i++)

{

double dAngle = i*M_PI/360;//M_PI 在math.h 里。

double E = nScale*(1+sin(3*dAngle));

x1 = 320+E*cos(dAngle);

x2 = 320+E*cos(dAngle+M_PI/5);

y1 = 240+E*sin(dAngle);

y2 = 240+E*sin(dAngle+M_PI/5);


Canvas->MoveTo(x1,y1);// 移到x1,y1 位置。
Canvas->LineTo(x2,y2);// 从当前位置画直线到x2,y2.


}

}

实现步骤

实现步骤很简单,用CB6.0 创建一个应用程序,把它保存为exp1 。然后设置窗口的背
影颜色为clNone ,设置FormPaint 事件函数,并加入以上代码就行了。


实例2 创建标题栏在左边的窗口界面

实例目标

实现左边标题,能拖动的窗口。如下图所示:


实现技术

第一步先指明窗口BorderStyle 为bsNone,这样就不能拉伸窗,没有标题和边框。第二
步就是在FormPaint(TObject *Sender) 函数里面画上标题和边框。这个函数响应消息OnPaint,
当出现重画窗口时调用。第三步就是响应WM_NCHITTEST 消息,以便拖动窗口。当返回
这个消息的结果为HTCAPTION 时,WINDOWS 就认为鼠标在标题框内,所以能拖动窗口
移动。

实现步骤

第一步创建程序,在Object Inspector 中设置BorderStyle 为bsNone 。
第二步添加DrawTitle() ,代码如下:
void __fastcall TfrmTitle::DrawTitle(void)
{


RECT rc;
//左边标题栏。
::SetRect(&rc,0,0,nTitleWidth,ClientHeight);
Canvas->Brush->Color = clBlue;
Canvas->FillRect(rc);
//右边边界。
::SetRect(&rc,ClientWidth-2,0,ClientWidth,ClientHeight);
Canvas->Brush->Color = clBlue;
Canvas->FillRect(rc);
//上面边界。
::SetRect(&rc,0,0,ClientWidth,2);
Canvas->Brush->Color = clBlue;
Canvas->FillRect(rc);
//下面边界。
::SetRect(&rc,0,ClientHeight-2,ClientWidth,ClientHeight);
Canvas->Brush->Color = clBlue;



Canvas->FillRect(rc);
//设置ICON 位置。
ImageIcon->Left = 0;
ImageIcon->Top = ClientHeight - ImageIcon->Height;
//输出标题。
char* msg=Caption.c_str();


LOGFONT fontRec;
memset(&fontRec,0,sizeof(LOGFONT));
fontRec.lfHeight = -13;
fontRec.lfWeight = FW_NORMAL;
fontRec.lfEscapement = 900; // 字体旋转90 度。
lstrcpy(fontRec.lfFaceName," 宋体");


HFONT hFont=CreateFontIndirect(&fontRec);// 创建字体。
HFONT hOld=::SelectObject(Canvas->Handle,hFont);// 选中字体。


::SetRect(&rc,0,0,nTitleWidth,ClientHeight);
::SetTextColor(Canvas->Handle,RGB(255,255,255));// 设置字体的颜色。
//输出标题。
::TextOut(Canvas->Handle,3,ClientHeight - ImageIcon->Height,msg,lstrlen(msg));


::SelectObject(Canvas->Handle,hOld);// 恢复。
::DeleteObject(hFont);


}

第三步添加OnNcHitTest(TMessage& tMsg) 函数,处理WM_NCHITT

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "C builder 10 开发手册" 是一本关于 C++ Builder 10 的开发指南。C++ Builder 是一个集成式开发环境,用于创建 Windows 程序和动态链接库。这本手册旨在为开发人员提供有关 C++ Builder 10 的全面指导。 手册首先介绍了 C++ Builder 10 的特点和功能,包括图形用户界面的设计和构建、数据访问、多媒体和网络编程等方面。它还解释了如何安装和设置开发环境,以及如何开始一个新的项目。此外,手册还包含了有关开发工具和调试器的详细信息,帮助开发人员更好地理解和调试他们的代码。 手册还讨论了各种常见的开发任务,例如窗体和控件的创建、事件处理程序的编写和使用各种内置组件的方法。此外,手册还介绍了高级主题,如多线程编程、异常处理和数据库连接等。 手册提供了大量的示例代码和说明,以帮助开发人员更好地理解和运用所学知识。此外,手册还提供了一些实用的技巧和技巧,帮助开发人员提高他们的开发效率和代码质量。 总而言之,"C++ Builder 10 开发手册" 是一本对于 C++ Builder 10 开发者来说不可或缺的指南。它提供了全面而详细的知识,帮助开发人员更好地掌握 C++ Builder 10 的开发技能,并将其应用于他们的项目中。无论是初学者还是有经验的开发人员,都可以从这本手册中获益,并提升他们的开发能力。 ### 回答2: C Builder 10开发手册是为了帮助开发者在C Builder 10开发环境下进行应用程序开发而提供的指南。该手册包括了C Builder 10的各个方面的内容,以帮助开发者快速入门并掌握开发技巧。 手册首先介绍了C Builder 10的基础知识,包括安装和配置开发环境、界面概述以及常用的开发工具和命令等。开发者可以通过这些内容了解到C Builder 10的整体结构和基本操作,为后续的开发工作打下基础。 接下来,手册详细介绍了C Builder 10的各种组件和控件,以及它们的使用方法和属性设置。开发者可以通过这些内容了解到如何使用不同的组件来构建应用程序的用户界面,并灵活地操作和定制各个控件的属性和行为。 此外,手册还介绍了C Builder 10的事件和消息处理机制,以及常用的编程技巧和设计模式。开发者可以通过学习这些内容,掌握如何编写响应用户操作的事件处理程序,并了解到如何更好地组织和管理代码,提高应用程序的开发效率和维护性。 最后,手册还提供了一些实例和案例分析,展示了如何在C Builder 10中实现一些常见的功能和任务。开发者可以通过学习这些实例,进一步巩固理论知识,并掌握如何将所学的知识应用到实际开发中。 总之,C Builder 10开发手册是一本详尽而实用的指南,为开发者提供了系统学习C Builder 10的资料。通过仔细阅读和实践,开发者可以掌握C Builder 10的核心概念和技巧,从而能够更加高效地进行应用程序开发

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值