何时触发PageControl.PageControl1DrawTab事件?能否用该事件来改变TabSheet.caption区的颜色?
解决方案 »
- 用Sql动态建表的问题
- 俺要实现这么一个功能,请指教!
- 有关程序执行
- mediaplay控件播放mpeg问题,以及播放avi文件时不能够显示相应的画面
- 如何在主应用程序的窗口中调用自已写的DLL中的Frame?谢谢
- 如何动态的生成一个form?
- 你知道如何在一个程序中动态的添加窗体(首先不知道这样是否可行)在线等
- Delphi怎样实现在聊天室里的滚屏?
- 关于RzPageControl的问题:当鼠标放到其中一个TabSheet上,还未选中的标签页,那么如何让关闭的叉叉自动显示出来啊?
- 如何激活別的程序窗口?
- 如何通过软件登录win2000机器,在程序中设置用户名和密码
- 需要什么delphi运行条件!
procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
cc: Cardinal;
tabRect: TRect;
begin
CopyRect(tabRect,Rect);
Control.Canvas.Brush.Color:= Self.color;
SetBkMode(Control.Canvas.Handle,1);
Control.Canvas.FillRect(tabRect);
cc := SetTextAlign(Control.Canvas.Handle,TA_TOP);
if(not Active) then
begin
SetTextColor(Control.Canvas.Handle,RGB(0,0,0));
Control.Canvas.TextOut(tabRect.Left+5,Rect.Top+2,TPageControl(Control).Pages[TabIndex].Caption);
end
else
begin
SetTextColor(Control.Canvas.Handle,ColorToRGB(clBlue));
Control.Canvas.TextOut(tabRect.Left+5,Rect.Top+4,TPageControl(Control).Pages[TabIndex].Caption);
end;
SetBkMode(Control.Canvas.Handle,0);
SetTextAlign(Control.Canvas.Handle,cc);
end;