canvas教程

使用DBgrid的技巧集锦(3)

字号+ 作者:H5之家 来源:H5之家 2015-11-04 11:21 我要评论( )

8、改变Dbgrid的选定色。 procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect:TRect; Field: TField; State: TGridDrawState); begin if gdSelected in state then SetBkColor(dbgrid1.canvas.hand

8、改变Dbgrid的选定色。
      procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
      Field: TField; State: TGridDrawState);
      begin
        if gdSelected in state then
        SetBkColor(dbgrid1.canvas.handle,clgreen)
        else
        setbkcolor(dbgrid1.canvas.handle,clwhite);
        dbgrid1.Canvas.TextRect(rect,0,0,field.AsString);
        dbgrid1.Canvas.Textout(rect.Left,rect.Top,field.AsString);
      end;

9、dbgrid中根据任一条件某一格变色。
      procedure TForm_main.DBGridEh1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumnEh;
      State: TGridDrawState);
      begin
        if (trim(DataModule1.ADOQuery1.FieldByName('dczt').AsString)='OK') then
        begin
          if datacol=6 then
          begin
            DbGrideh1.Canvas.Brush.Color:=clGradientActiveCaption;
            DbGrideh1.DefaultDrawColumnCell(Rect,datacol,column,state);
          end;
        end;
      end;

10、Dbgrid中选择多行发生一事件。
      procedure TForm1.Button1Click(Sender: TObject);
      var
      i:integer;
      bookmarklist:Tbookmarklist;
      bookmark:tbookmarkstr;
      begin
        bookmark:=adoquery1.Bookmark;
        bookmarklist:=dbgrid1.SelectedRows;
        try
        begin
          for i:=0 to bookmarklist.Count-1 do
          begin
            adoquery1.Bookmark:=bookmarklist[i];
            with adoquery1 do
            begin
              edit;
              fieldbyname('mdg').AsString:=edit2.Text;
              post;
            end;
          end;
        end;
        finally
        adoquery1.Bookmark:=bookmark;
        end;
      end;

分享:

喜欢

0

赠金笔

阅读┊ ┊ ┊┊ ┊打印┊

已投稿到:

排行榜

加载中,请稍候......

前一篇:什么是Web Site网站和WebApplication Web应用程序.

评论 重要提示:警惕虚假中奖信息

  • 评论加载中,请稍候...
  • 发评论

    登录名: 密码: 找回密码 注册

    昵   称:

       

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    < 前一篇什么是Web Site网站和WebApplication Web应用程序.

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    网友点评