当前位置: 首页 > 图文教程 > 开发语言 > Delphi > 用Delphi制作Windows 98风格的工具栏

Delphi
得到执行程序的目录
返回程序执行参数
如何区分3种不同的FormActive事件
正确关闭一个MDI子窗口
写小执行程序
替换指定串函数
动态数组
动态产生构件并相应事件
文件管理(一)
想成高手吗?快来学Delphi快捷键
浅谈Delphi如何控制Excel操作
用Delphi检测IE使用的代理服务器
Delphi学习:查句柄知多少
Delphi学习:OOP 中的双刃剑
在 NT内核的操作系统上实现系统关闭
用Delphi制作DLL的方法
Delphi:Daily build实践
Delphi控制Excel的重要属性和方法
Delphi学习:2个不错的通配符比较函数
字符串分割扩展 SplitEx

用Delphi制作Windows 98风格的工具栏


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 126 ::
收藏到网摘: n/a

 

  Windows98的工具栏上的按钮不仅会随鼠标的移动而凸起变化,而且按钮上图标的颜色也会随着变化。在Delphi中所提供的工具栏控件中,仅仅提供了按钮凸起变化功能,并没有提供图标颜色变换功能。笔者利用Delphi的灵活性,轻松地实现了按钮图标颜色的变化。

  首先,先新建一窗体Form1,在窗体中放一Toolbar控件Toolbar1,两个Imagelist控件Imagelist1、Imagelist2,并在Toolbar1控件上用鼠标点击右键添加按钮,其Hotimages与Images的属性设为Imagelist1,Flat属性设为Ture。

  其次,添加图像列表到Imagelist1与Imagelist2中,因为要用到按钮上图标的颜色变换,所以在Imagelist1与Imagelist2中放置次序一样、但颜色不同的几个相同的图像。我们以Delphi提供的按钮图像为例(在c:\ Program Files\Common Files\ Borland Shared\images\buttons\目录下),在Imagelist1与Imagelist2中分别添加相同次序的图像掩码与图像。

  最后,在Form1或Toolbar1的Mousemove事件添加如下代码,当鼠标在工具栏上移动时,所到之处不仅按钮会凸起变化,而且图标会随鼠标的移动而变化颜色,颇像Windows98工具栏风格:

  procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

  begin

  toolbar1.HotImages:=imagelist2;

  end;