用Delphi制作个性化的菜单(2)

2008-04-09 04:31:56来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

在此,我们必须首先把准备将其制作成有个性特征的菜单设为自绘式。


二、关于背景的重绘


通常Windows程序的标准菜单,在其被下拉或弹出时,鼠标在上移动时出现的选择条背景是一单一的颜色,现在我们要将其重绘为有渐变色效果的背景,另外如果要在其背景上绘制图形(您见过这样的菜单吗?),则应先绘图、后绘渐变的背景。这些绘制工作的完成只需简单使用Delphi提供的画布(Canvas)对象。


三、关于重绘图标


如果菜单上有图标,则最好为各菜单项指定ImageIndex索引号,而不要使用其Bitmap属性。这样在为各菜单项指定了ImageIndex索引号后,可以直接用其TImageListDraw方法在同一个画布上绘制相应的图标。


四、关于重绘菜单文本


在重绘菜单时,为了不破坏其背景,应将文本的背景模式设为透明,这要用到一个Windows API函数SetBkMode(),其在C 中定义的原形如下:
int SetBkMode(


HDC hdc,


int iBkMode // flag specifying background mode


);


其中:hdc – 是绘图设备句柄,在Delphi中可为TcanvasHandle

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Borland IDE 常用热键简介 v0.1

下一篇:[笔记] FMX 在 iOS 平台主窗体 DoubleTap 手势,要慎用!