我想给DBNavigator控件加上汉字,怎样实现?

解决方案 »

  1.   

    修改hints属性,
    打开后在里面改,注意顺序
      

  2.   

    我的本意是,将DBNavigator控件上的符号用汉字代替。
      

  3.   

    你想把DbNagvator图片去掉换成文字 可以这样
    1. form1摆一个DBNavigator1
    2\定义
    type
    TMyNavgator = class(TDBNavigator);
    3.FormCreat时候
    //去掉图片
    TMyNavgator(DBNavigator1).Buttons[nbFirst].Glyph.Assign(nil);
    //汉字
    TMyNavgator(DBNavigator1).Buttons[nbFirst].Caption:='第一条';
      

  4.   

    如果要加上自己的图片:TspeedButton(TMyNavgator(DBNavigator1).Buttons[nbFirst]).Layout:=blGlyphTop;//位置
    TspeedButton(TMyNavgator(DBNavigator1).Buttons[nbFirst]).Glyph.LoadFromFile('D:\1.bmp');//图片
    TMyNavgator(DBNavigator1).Buttons[nbFirst].Caption:='增加';
      

  5.   

    修改VCL源码,或者自己从DBNavigator派生一个类,然后在初始按钮里的写按钮的标题
      

  6.   

    建议自己做,
    用FIRST,LAST之类的语句就可以实现,
    不费事
      

  7.   

    用  tong_jin(tj) 的方法就可了!
      

  8.   

    TMyNavgator是什么东西?没见过
      

  9.   

    unit MyNavEh;interface
    uses classes,windows,DBCtrls,db;
    type
      TMyDBNavigator=Class(TDBNavigator)
      Private
        procedure SetstrCaption;
      public
        constructor Create(AOwner:TComponent);override;
        procedure BtnClick(Index:TNavigateBtn);override;
      end;
    implementation
    var
      strCaption:array[0..9] of String=('第一条','上一条','下一条','末一条',
                                        '添加','删除','编辑','提交','取消','刷新');
    procedure TMyDBNavigator.BtnClick(Index:TNavigateBtn);
    begin
      if (DataSource<>nil) and (DataSource.State<>dsInactive) then
      begin
        if not (csDesigning in ComponentState) then
        with DataSource.DataSet do
        begin
          case Index of
          nbPrior:Prior;
          nbNext:Next;
          nbFirst:First;
          nbLast:Last;
          nbEdit:Edit;
          nbCancel:Cancel;
          nbPost:Post;
          nbRefresh:Refresh;
          nbDelete:
          begin
            if MessageBox(Handle,'确认要删除这条记录吗?','警告',
                          MB_OKCANCEL or MB_ICONWARNING)=ID_OK then
              Delete;
          end;
        end;
        end;
      end;
    end;constructor TMyDBNavigator.Create(AOwner:TComponent);
    begin
      inherited Create(AOwner);
      SetstrCaption;
    end;procedure TMyDBNavigator.SetstrCaption;
    var
      I:TNavigateBtn;
      K:Integer;
    begin
      K:=0;
      for I:=Low(Buttons) to High(Buttons) do
      begin
        Buttons[I].Caption:=strCaption[K];
        Inc(K);
      end;
    end;end.
      

  10.   

    用TActionList中的标准Dataset 的Action,再结全按钮,很容易实现