登录
首页 » Delphi源码 » Delphi Canvas.Brush为窗体绘制渐变背景

Delphi Canvas.Brush为窗体绘制渐变背景

于 2022-05-24 发布 文件大小:9.12 kB
0 158
下载积分: 2 下载次数: 1

代码说明:

Delphi 为窗体绘制渐变背景,这里使用了Delphi中的Canvas.Brush.Color来实现窗口背景的渐变色,不错吧?如示例图的左右渐变效果,实现的代码:   for i:=0 to self.Width-1 do   begin   c1:=GetRValue(StartColor)+Trunc(i*(GetRValue(EndColor)-GetRValue(StartColor))/(self.Width-1));   c2:=GetGValue(StartColor)+Trunc(i*(GetGValue(EndColor)-GetGValue(StartColor))/(self.Width-1));   c3:=GetBValue(StartColor)+Trunc(i*(GetBValue(EndColor)-GetBValue(StartColor))/(self.Width-1));   Canvas.Brush.Color:=RGB(c1,c2,c3);   //每次画矩形的画刷颜色   Dct:=Rect(i,0,i+1,self.Height);   //每次刷绘的矩形区域   Canvas.FillRect(Dct);   //填充颜色   end;

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 轻型网络聊天Delphi程序-
    轻型网络聊天Delphi程序-源码,类似聊天室, 很简单,这是个多年前的网络编程例子,聊天过程中显示对方的IP,和当前好友姓名,还支持删除聊天记录。用户注册时,可对注册信息进行初始验证,比如用户名是否存在、姓名和IP地址不能空等,有一些技巧对Delphi打基础有帮助。
    2023-05-16 10:20:03下载
    积分:1
  • Delphi API笔刷制作
    Delphi API笔刷制作实例的源码,这个笔刷只不过比较简单,点击按钮后自动生成,而且是有规则的网格线,或许通过这个简单的笔刷,你可以学习到用Delphi制作笔刷的入门技巧,相关的代码如下:   procedure TForm1.Button1Click(Sender: TObject);   var    LogBrush:TLogBrush;   begin    LogBrush.lbStyle:=BS_HATCHED;    LogBrush.lbColor:=clRed;    LogBrush.lbHatch:=HS_DIAGCROSS;    Canvas.Brush.Handle := CreateBrushIndirect(LogBrush);    Canvas.FillRect(ClientRect);   end;
    2022-03-30 01:57:49下载
    积分:1
  • Delphi打开记事本和计算器等外部程序
    Delphi打开记事本和计算器等外部程序,应该说是调用外部程序,调用记事本和计处器,单击窗口中的两个按钮,分别会打开Windows自带的记事本和计算器程序。
    2022-12-21 03:55:04下载
    积分:1
  • Delphi 渐变的RGB空心色环绘制演示
    Delphi渐变圆形的实现方法,RGB色环空心绘制演示源码:   oBmp := TBitmap.Create; //为了代码整齐就不写try了   oBmp.PixelFormat := ABitmap.PixelFormat;   oBmp.Width := ABitmap.Width;   oBmp.Height := ABitmap.Height;   BitBlt(oBmp.Canvas.Handle, 0, 0, oBmp.Width, oBmp.Height, ABitmap.Canvas.Handle, 80, 80, SRCCOPY); //要拷贝的位图   oRgn := CreateEllipticRgn(0, 0, 100, 100); //创建圆形区域   SelectClipRgn(ABitmap.Canvas.Handle, oRgn); //选择剪切区域   ABitmap.Canvas.Draw(0, 0, oBmp); //位图位于区域内的部分加载
    2022-03-21 13:09:53下载
    积分:1
  • Delphi 使用PSAPI.dll枚举Window7 进程及页面内存信息
    Delphi 在Windows NT/2000 环境下使用PSAPI获取进程的信息演示,其实在Window7环境下同样也可枚举到进程及页面内存信息,可以列举所有正在运行的进程,正在运行的所有进程,鼠标双击有进程的详细信息,可以得到某一进程的模块、页面等信息,以及内存映射的文件名。   如果列举进程出错,请确认是否安装了PSAPI.DLL。   本程序除了列举进程外,还可列举设备信息。运行效果请参见截图所示。
    2022-07-02 19:53:17下载
    积分:1
  • Delphi 目录操作范例:改变当前目录
    Delphi 目录操作范例:改变当前目录,先获取当前的目录路径,然后改变这个目录路径,文件当前在此目录,那么如何修改文件路径呢?   procedure TForm1.Button1Click(Sender: TObject);   begin    try    chdir(Edit2.Text);    finally    getdir(0,result);    Edit2.Text := result;    end;   end;   源代码仅供参考。
    2022-11-19 16:05:03下载
    积分:1
  • Delphi 不使用标题栏移动窗体
    Delphi 不使用标题栏移动窗体,意思是说,平时大家拖动Windows窗口的时候,都是鼠标放在窗口的标题栏上,按住鼠标左键拖动窗体,但本源码实现的功能是,不以标题栏为操作目标,那是怎么实现的窗口拖动呢?请下载参见本源码。
    2022-10-18 04:15:03下载
    积分:1
  • Delphi 7在数据库中存取图像
    Delphi 7在数据库中存取图像,这个示例代码较早,面向的图像格式为BMP,JPG、GIF之类的图片格式未做测试,或许也可以。示例中将4张图片保存到数据库中,然后程序将从数据库中输出这些图片,通过程序的操作,你只需选择对应的图片,即可从数据库中读取出对应的图片。
    2022-10-12 00:05:03下载
    积分:1
  • Delphi TreeView来显示数据库信息
    Delphi 使用TreeView来显示数据库信息,从数据库中读取数据,然后生成树形交叉节点的菜单,这种菜单通俗的叫做“树形菜单”,也是大家平时比较常见的菜单形式之一。   function TreeAddItem(Sender: TTreeView;ItemList: TStrings;BookMark: TBookMark;Resort: Boolean):TTreeNode;   var    ThisNode,Node: TTreeNode;    i: integer;   begin    Node := Nil;    for i := 0 to ItemList.Count-1 do    begin    ThisNode := TreeFindItem(Sender,Node,ItemList[i]);    if(ThisNodeNil) then Node := ThisNode    else begin    if I   then begin    if I=0 then Node := Sender.items.Add(Node, Itemlist[i])    else Node := Sender.items.AddChild(Node, Itemlist[i]);    end    else begin    if I=0 then Node := Sender.items.AddObject(Node, Itemlist[i],Bookmark)    else Node := Sender.items.AddChildObject(Node, Itemlist[i],Bookmark);    end;    Node.stateIndex := Node.level + 1;    if Resort and (Node.parent nil) then Node.parent.alphasort;    end;    end;    Result := Node;   end;
    2022-02-02 14:05:08下载
    积分:1
  • Windows 剪贴板高级编程-Delphi实例
    Windows 剪贴板高级编程-Delphi源码实例,其实也不是什么高级编程,挺基础的剪贴板应用。学习如何在Delphi环境下读取Windows剪贴板的内容。在编写一些系统辅助类的软件中,可使用到这些小技巧。以下代码:将剪贴板内容读取出来,在代码的执行放入一个按钮事件中:   procedure TForm1.Button2Click(Sender: TObject);   var    DataRec: TDataRecord;    Data: THandle;    PData: Pointer;   begin    Data := Clipboard.GetAsHandle(CF_CUSTOMFORMAT);    if Data = 0 then Exit;    PData := GlobalLock(Data);    Move(PData^, DataRec, GlobalSize(Data));    GlobalUnlock(Data);    with DataRec do    ShowMessage(Name + #13#10 + Sex + #13#10 + Hobby);   end;
    2022-04-22 08:40:48下载
    积分:1
  • 696516资源总数
  • 106648会员总数
  • 8今日下载