登录
首页 » Delphi源码 » Delphi 使用Canvas美化ListBox列表项

Delphi 使用Canvas美化ListBox列表项

于 2022-06-01 发布 文件大小:6.24 kB
0 244
下载积分: 2 下载次数: 1

代码说明:

Delphi 使用Canvas美化列表项,当用户鼠标单击ListBox列表项时,该列表项高亮显示,改变背景色,文字居中对齐,如图所示。   主要是使用了Delphi中的Canvas.FrameRect对其进行美化,具体代码有兴趣可参考:   Canvas.FrameRect(Clientrect);   if odSelected in State then   begin    Canvas.Brush.Color:=clRed;    Canvas.RoundRect(Rect.Left,Rect.Top,Rect.Right,Rect.Bottom,8,15);    setBkMode(Canvas.Handle,TRANSPARENT );    Canvas.TextOut((Rect.right-Rect.Left) div 2,Rect.Top,Items.Strings[Index]);   end   else   begin    Canvas.Brush.Color:=clSkyBlue;    Canvas.RoundRect(Rect.Left,Rect.Top,Rect.Right,Rect.Bottom,15,15);    Canvas.TextRect(Rect,Rect.Left,Rect.Top,Items.Strings[Index]);   end;

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

发表评论

0 个回复

  • Delphi 设定Windows屏幕分辨率的方法和示例代
    Delphi 设定Windows屏幕分辨率的方法和示例代码:   function TForm1.DynamicResolution(X, Y: word): BOOL;   var    lpDevMode: TDeviceMode;   begin    Result := EnumDisplaySettings(nil, 0, lpDevMode);    if Result then    begin    lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;    lpDevMode.dmPelsWidth := X;    lpDevMode.dmPelsHeight := Y;    Result := ChangeDisplaySettings(lpDevMode, 0) = DISP_CHANGE_SUCCESSFUL;    end
    2023-04-22 01:05:03下载
    积分:1
  • Delphi实现动态的窗口标题栏文字
    Delphi实现动态的窗口标题栏文字,让标题栏文字滚动,有以下动态变化形式:标题左循环,标题左右移动,停靠右端,设置移动时间间隔,每隔多少毫秒移动一个字等。可以在标题上设置一些醒目的内容,再使用本效果,吸引使用者的注意,是一种很不错的提醒方式。
    2022-01-27 16:11:55下载
    积分:1
  • Delphi 制作的文字屏保
    Delphi 制作的文字屏保,文字交替变化,晃动鼠标结束屏保。本程序的亮点是对文字动画效果的生成和控制。具有文字渐变和水平平移动画。
    2022-03-28 23:49:31下载
    积分:1
  • Delphi 不使用标题栏移动窗体
    Delphi 不使用标题栏移动窗体,意思是说,平时大家拖动Windows窗口的时候,都是鼠标放在窗口的标题栏上,按住鼠标左键拖动窗体,但本源码实现的功能是,不以标题栏为操作目标,那是怎么实现的窗口拖动呢?请下载参见本源码。
    2022-10-18 04:15:03下载
    积分:1
  • Delphi在窗口中单击左键弹出菜单
    Delphi在窗口中单击左键弹出菜单,在运行的窗体空白外,单击鼠标左键,弹出主菜单,其实和右键 菜单 是一样的原理,希望通过这个简单的例子,了解自定义窗口菜单的实现方法。
    2023-09-08 18:20:03下载
    积分:1
  • Delphi 自定义播放窗口
    Delphi 自定义播放窗口,指定视频显示窗口,本源码演示的重点主要是播放器窗口外观的设计,调用了外部的一张jpg图片做为播放器的主窗口,让窗口风格首先看上去具有播放器程序的风格,因此,在美化窗口时如何使用jpg格式的图片,是本例要表现的重点功能,希望对窗体设计感兴趣的Delphi初学者好好学习研究一番哦。   本播放器虽然重在演示窗口功能的实现,不过它真的可以播放视频文件,比如mpg格式的文件。
    2022-05-25 21:56:20下载
    积分:1
  • Delphi 程序控制关闭显示器
    Delphi 程序控制关闭显示器,不过我很好奇Delphi真能关闭显示器么?如果是用Delphi截断视频信号的输出,让显示器黑屏,这倒是有可能哦,但是让Delphi直接关闭显示器,有点不太可能吧?看了看代码,原来是这样:   begin   //关闭显示器   PostMessage(Application.Handle,WM_SYSCOMMAND,SC_MONITORPOWER,1);   //打开显示器:   PostMessage(Application.Handle,WM_SYSCOMMAND,SC_MONITORPOWER,0);   end;
    2022-04-01 11:14:50下载
    积分:1
  • Delphi 使窗体始终在最前面
    Delphi 使窗体始终在最前面,不几行代码实现的置顶窗口,大家对这种窗口相信都不会太陌生,不被其它的窗口遮挡,显示在最前面,典型的应用像一些视频播放器的播放窗口,在播放视频时可设置显示在最顶端,你可以边工作边看电影啦!详细实现请参考源代码。
    2022-03-14 11:14:48下载
    积分:1
  • Delphi 图片颜色逐渐加深功能的实现
    Delphi演示如何将一张图片的颜色加深,类似于调整对比度,不过本效果不加入了渐变加深的动画效果,按住按钮图片一直变暗下去,要知空间,你可看下以下代码:   Bitmap:=image1.Picture.Bitmap;   image1.Height:= Bitmap.Height;   image1.Width:= Bitmap.Width;   for i:=0 to 255 do   begin    sleep(10);    for y:=0 to Bitmap.Height-1 do    begin    pixcolo:=Bitmap.Scanline[y]; //扫描每行像素颜色    for x:=0 to ((Bitmap.Width*3)-1) do    //递减颜色值,不同的递减值可改变不同的速度    if pixcolo[x]>0 then pixcolo[x]:=(pixcolo[x]-1);    end;    Image1.Canvas.Draw(0,0,Bitmap);    Application.ProcessMessages; //让Application去处理消息队伍中的消息   end;
    2022-03-23 16:34:19下载
    积分:1
  • Delphi 将数字转换成字符串
    Delphi 将数字转换成字符串,请参见以下的转换代码,转换成功后将以 showmessage的形式返回结果,核心转换功能代码实现:   procedure TForm1.Button1Click(Sender: TObject);   var    i:integer;    s:string;   begin    i:=1234567;    s:=inttostr(i);    showmessage(s);   end;
    2022-09-05 21:20:03下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载