CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

有没有带图标的ComboBox控件?

楼主Liusp(夜深千帐灯)2002-05-29 08:25:22 在 Delphi / VCL组件开发及应用 提问

先谢谢! 问题点数:20、回复次数:9Top

1 楼luoshumeng(乡村意外)回复于 2002-05-29 08:29:24 得分 0

有呀,就是ComboboxEx呀,在WIN32那一面板中!Top

2 楼Kingron(单身走我路……)回复于 2002-05-29 08:36:12 得分 0

ComboBoxEx要Delphi6里面才有吧?Top

3 楼liuhelin(鹤林)回复于 2002-05-29 08:42:12 得分 0

也可以设置ownerdraw然后自己画Top

4 楼Liusp(夜深千帐灯)回复于 2002-05-29 08:45:05 得分 0

我用D5!Top

5 楼slwqw(四大名捕之追杀令)回复于 2002-05-29 08:55:43 得分 0

我手头有这样的控件,把你的E-Mail贴出来,我发给你.Top

6 楼superljj()回复于 2002-05-29 09:02:55 得分 10

自己做,很简单的。  
  procedure   TUser_EditForm.ComboBox1DrawItem(Control:   TWinControl;  
      Index:   Integer;   Rect:   TRect;   State:   TOwnerDrawState);  
  var  
      Btm:TBitmap;  
  begin  
      Btm:=TBitmap.create;  
      ComboBox1.Canvas.StretchDraw(Rect,Btm);  
      ComboBox1.Canvas.Brush.Bitmap:=nil;    
  end;Top

7 楼Liusp(夜深千帐灯)回复于 2002-05-29 09:25:30 得分 0

superljj():  
   
      好象没起什么作用?Top

8 楼ehom(?!)回复于 2002-05-29 11:20:07 得分 0

需要将style设为csOwnerDrawFixe或csOwnerDrawVariable  
  Top

9 楼I_am_zealot(狂战士)回复于 2002-07-03 20:40:22 得分 10

procedure   TForm1.ComboBox1DrawItem(Control:   TWinControl;   Index:   Integer;  
      Rect:   TRect;   State:   TOwnerDrawState);  
  var   bitmap:TBitmap;  
          pos:Integer;  
  begin  
      with   Control   as   TComboBox   do   begin  
          Canvas.FillRect(Rect);  
          bitmap:=TBitmap(Items.Objects[Index]);  
          pos:=0;  
          if   Bitmap<>nil   then   begin  
              Canvas.BrushCopy(Bounds(Rect.Left+2,Rect.Top+2,bitmap.Width,bitmap.Height),  
                  bitmap,Bounds(0,0,bitmap.Width,bitmap.Height),clRed);  
              pos:=bitmap.width+8;  
              end;  
          Canvas.TextOut(Rect.Left+pos,Rect.Top,Items[Index]);  
          end;  
  end;  
   
  procedure   TForm1.ComboBox1MeasureItem(Control:   TWinControl;   Index:   Integer;  
      var   Height:   Integer);  
  begin  
      Height:=20;  
  end;  
   
  procedure   TForm1.Button1Click(Sender:   TObject);  
  var   bitmap:TBitmap;  
  begin  
      bitmap:=TBitmap.Create;  
      try  
          bitmap.LoadFromFile(DirectoryListBox1.Directory+'\'+Edit1.Text);  
      except  
          bitmap:=nil;  
      end;  
      ComboBox1.Items.AddObject(Edit2.Text,bitmap);  
  end;  
   
  end.Top

相关问题

  • 控件,的图标
  • (急) 如何实现带图标的ListBox控件???
  • comboBox控件
  • 怎样在ListView控件中显示每个文件自带的图标?
  • SQL的图标消除,控件
  • 关于ActiveX控件图标的制作
  • 在LIST控件中显示图标.急!!!
  • 列表控件的图标排列
  • 怎样在控件上加图标
  • 如何自定义控件的图标?

关键词

  • bitmap
  • combobox
  • tbitmap
  • btm
  • rect
  • twincontrol
  • canvas
  • tform
  • nil
  • pos

得分解答快速导航

  • 帖主:Liusp
  • superljj
  • I_am_zealot

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo