请问各位高手:怎么样把Delphi中的DBNavigator(数据表指针移动控制按钮)竖立起来使用呀(有需要,本来是横着的)?

解决方案 »

  1.   

    //参考如下代码~~
    type
      PComponentState = ^TComponentState;procedure TForm1.FormShow(Sender: TObject);
    var
      I: Integer;
    begin
      Include(PComponentState(@DBNavigator1.ComponentState)^, csLoading);
      DBNavigator1.Width := 24;
      DBNavigator1.Height := 0;
      for I := 0 to DBNavigator1.ComponentCount - 1 do
        if DBNavigator1.Components[I] is TNavButton then
        begin
          TNavButton(DBNavigator1.Components[I]).Left := 0;
          TNavButton(DBNavigator1.Components[I]).Top := DBNavigator1.Height;
          DBNavigator1.Height := DBNavigator1.Height + 24;
        end;
      Exclude(PComponentState(@DBNavigator1.ComponentState)^, csLoading);
    end;
      

  2.   

    //参考如下方法~~
      for I := 0 to DBNavigator1.ComponentCount - 1 do
        if DBNavigator1.Components[I] is TNavButton then
        begin
          TNavButton(DBNavigator1.Components[I]).Left := 0;
          TNavButton(DBNavigator1.Components[I]).Top := DBNavigator1.Height;
          DBNavigator1.Height := DBNavigator1.Height + 24;      if TNavButton(DBNavigator1.Components[I]).Index in
            [nbFirst, nbPrior, nbNext, nbLast] then
          begin
            //TODO : 处理TNavButton(DBNavigator1.Components[I]).Glyph属性替换图标
            TNavButton(DBNavigator1.Components[I]).Glyph.LoadFromFile('c:\temp\temp.bmp'); //例
          end;
        end;