请教:当鼠标接触到DBLookupComboBox1时变为红色,离开时变为黑色。 请给源码,谢谢!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分别在DBLookupComboBox的OnEnter事件和OnExit事件中添加改变颜色的代码就OK。当然,这样做还有附加结果:用Tab键改变焦点到该控件或离开时,颜色也会变。至于源代码,俺看就不必了。 写代码?我不喜欢,呵呵。响应OnmouseEnter事件和OnMouseLeave事件。不过,实际上DBLookUpComboBox并没有提供这两个事件,呵呵,怎么办呢?重载DBLookUpComboBox元件,如下代码: TMyDBLookUpComboBox = class(TDBLookUpComboBox) private public procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER; procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE; end;implementationprocedure TMyDBLookUpComboBox.CMMouseEnter(var Message: TMessage);begin inherited; Font.Color:=clRed; Invalidate;end;procedure TMyDBLookUpComboBox.CMMouseLeave(var Message: TMessage);begin inherited; Font.Color:=clBlack; Invalidate;end;基本的原理是这样,我不清楚你是要让鼠标变成红色,还是要让整个ComboBox的文字变成红色? 补充一下,如果你要让整个ComboBox的背景变成红色用如下代码:Brush.Color:=clRed;Invalidate;//用RePaint或者ReFresh也可以,稍微有一点差异。 Delphi非.net版本中OOP使用情况调查.继续高分相赠! 怎样在COMBOBOX中显示某个SQLERVER服务器中的数据库列表 ★★子窗体最小化时隐藏标题栏显示客户区,如何实现,请大家帮帮我! 关闭程序时出现错误,为什么? 帮我改sql语句,谢谢 怎么在ini文件里面写入结构和读取结构 高手给讲讲对象和类,在线等 请帮我看一下我的注册OCX文件的函数为什么不行?(高分) 怎样把一个Word格式文件转化为Txt文本文件 请问:在Delphi中如何实现字幕的滚动播放? up有分 如何模拟鼠标的单击?
响应OnmouseEnter事件和OnMouseLeave事件。
不过,实际上DBLookUpComboBox并没有提供这两个事件,呵呵,怎么办呢?重载DBLookUpComboBox元件,如下代码: TMyDBLookUpComboBox = class(TDBLookUpComboBox)
private
public
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
end;implementationprocedure TMyDBLookUpComboBox.CMMouseEnter(var Message: TMessage);
begin
inherited;
Font.Color:=clRed;
Invalidate;
end;procedure TMyDBLookUpComboBox.CMMouseLeave(var Message: TMessage);
begin
inherited;
Font.Color:=clBlack;
Invalidate;
end;基本的原理是这样,我不清楚你是要让鼠标变成红色,还是要让整个ComboBox的文字变成红色?
Brush.Color:=clRed;
Invalidate;//用RePaint或者ReFresh也可以,稍微有一点差异。