queensf
总版主
总版主
  • 注册日期2003-12-04
  • 发帖数735
  • QQ
  • 铜币3枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1530回复:1

DELPHI图形编辑技巧二则

楼主#
更多 发布于:2004-04-07 20:19
一、界面色彩渐变效果的实现
  界面色彩渐变效果是通过用渐变的画刷刷绘依次相邻的矩形块实现的。下面列举实例说明:

  1.新建一个表单,假设其Width为500,设置一个按钮Button1,按此按钮将把表单置为由左向右由黄变白的渐变效果。

  2.Button1按钮的代码如下:

  procedure TForm1.Button1Click(Sender: TObject);
  var i,j:Integer;
  Dct:TRect;
  begin
  j:=Form1.height;
  //获得表单高度
  for i:=0 to 255 do
  //此处设置RGB()中一个颜色值
  begin
  Canvas.Brush.Color:=RGB(255,255,i);
  //每次画矩形的画刷颜色
  Dct:=Rect(i*2,0,(i+1)*2,j);
  //每次刷绘的矩形区域
  Canvas.FillRect(Dct);
  //填充颜色
  end;
  end;

  二、图形整体拉出效果

  单纯的图形整体拉出效果比较简单,动态地改变图形区域的大小就可以实现,但事先应将图形的“Stretch”设置为“True”。

  举例说明下拉效果:

  1.在表单上放置一图片,高度为200,属性“Height”设为0,“Stretch”设置为True。添加“Timer”构件,“Interval”设为200,“Enable”设为Ture。

  2.在Timer1Timer中添加代码:

  procedure TForm1.Timer1Timer(Sender: TObject);
  begin
  Image1.Height:=Image1.Height+20;
  //设置增量
  if image1.Height=200 then Timer1.Enabled:=FALSE;
  //图形整体拉出完毕
  end;
喜欢0 评分0
[color=blue][size=4][i][b][u] 【 解决不了的事情,就不要想。世界不会因为我而改变。 】 [/size][/u][/b][/i][/color]
queensf
总版主
总版主
  • 注册日期2003-12-04
  • 发帖数735
  • QQ
  • 铜币3枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-04-12 20:37
自己顶!!!
[color=blue][size=4][i][b][u] 【 解决不了的事情,就不要想。世界不会因为我而改变。 】 [/size][/u][/b][/i][/color]
举报 回复(0) 喜欢(0)     评分
游客

返回顶部