设为首页 加入收藏

TOP

firemonkey EDit 改变颜色
2017-10-09 13:33:57 】 浏览:1457
Tags:firemonkey EDit 改变 颜色

PS:本来不应该有多难,结果折腾了半天,

firemonkey EDit  Canvas 按需绘颜色

 

 

procedure TForm.EditPaint(Sender: TObject; Canvas: TCanvas;
  const ARect: TRectF);
  var
    ARect1: TRectF;
begin
   //绘制颜色
   (Sender as TEdit).BeginUpdate;
   ARect1:=ARect;
   ARect1.Left:=1;
   ARect1.Top:=1;
   ARect1.Bottom:=ARect.Bottom-1;
   ARect1.Right:=ARect.Right-1;


     if (Sender as TEdit).Text= ((Sender as TEdit).Hint)  then
      begin
         Canvas.Fill.Kind := TBrushKind.Solid;
         Canvas.Fill.Color := TAlphaColorRec.Blue;
         Canvas.FillRect(ARect1, 0, 0, [], 1);
         (Sender as TEdit ).FontColor:=TAlphaColorRec.red;
      end
      else
      begin
        // Canvas.Fill.Kind := TBrushKind.Solid;
         Canvas.Fill.Color := TAlphaColorRec.Red;
         Canvas.FillRect(ARect1, 0, 0, [], 1);
         (Sender as TEdit ).FontColor:=TAlphaColorRec.blue;
      end;

   Canvas.Fill.Color := TAlphaColorRec.Black;
   Canvas.Font.Size:=12;
    Canvas.FillText(ARect1, (Sender as tedit).Text, false,1, [], TTextAlign.Center, TTextAlign.Center);
   (Sender as TEdit).EndUpdate;
end;

  

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇CnPack实用功能推荐 下一篇Delphi主窗体实现透明

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目