powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / GridLineWidth Ehlib (DBGridEh)
16 сообщений из 16, страница 1 из 1
GridLineWidth Ehlib (DBGridEh)
    #39769076
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как переписать наследника DBGridEh, чтобы заработало это свойство?
Мне нужно вот так:
https://imgbb.com/][img] https://i.ibb.co/t3hSkLT/GridLine.jpg [/img]
2 дня бьюсь.. не меняется ширина, а только увеличивается размер самих ячеек
На оф. форуме молчат, может тут кто поможет.
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769100
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aford,

dkj,
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
type
  THackCustomDBGridEh = class(DBGridEh.TCustomDBGridEh)
  protected
    property GridLineWidth;
  end;
  
  TfmMain = class...

implementation

procedure TfmMain.FormCreate(Sender: TObject);
begin
  THackCustomDBGridEh(grdEh).GridLineWidth := 10;
end;

...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769101
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗЫ http://www.stringgrid-delphi.ru/gridlinewidth.php есть свойства, в том числе и GridLineWidth, которые лучше вообще не трогать, и значения которых лучше не менять.
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769109
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ma1tus,

У меня не работает...
Может что перебивает? Я уже унаследовался от DBCustomGridEh и свойство GridLineWith доступно всем таблицам в программе, только толку от этого нет.
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
  TCustomDBGridEh = class(TDBGridEh)
  public
    DBGridType: TDBGridType;
    procedure OptimizeColumns;
    procedure DefaultDrawColumnCell(const Rect: TRect; DataCol: Integer;
      Column: TColumnEh; State: TGridDrawState); reintroduce;
    procedure DrawColumnCell(const Rect: TRect; DataCol: Integer;
      Column: TColumnEh; State: TGridDrawState); override;
    procedure DefaultIndicatorTitleMouseDown(Cell: TGridCoord;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
    function DoMouseWheelDown(Shift: TShiftState; MousePos: TPoint): Boolean; override;
    function DoMouseWheelUp(Shift: TShiftState; MousePos: TPoint): Boolean; override;
    function HighlightNoDataCellColor(ACol, ARow: Integer; DataCol, DataRow: Integer;
      CellType: TCellAreaTypeEh; AState: TGridDrawState; InMultiSelect: Boolean; var AColor: TColor;
      AFont: TFont): Boolean; override;
  end;
...
TDBGridEh = class(TCustomDBGridEh);
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769117
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aford
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
  TCustomDBGridEh = class(TDBGridEh)
  public
    ...
    function HighlightNoDataCellColor(ACol, ARow: Integer; DataCol, DataRow: Integer;
      CellType: TCellAreaTypeEh; AState: TGridDrawState; InMultiSelect: Boolean; var AColor: TColor;
      AFont: TFont): Boolean; override;    
    property GridLineWidth;
  end;
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769125
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ma1tus,

Не выходит. Только сами ячейки становятся больше-меньше
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769132
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оно то работает, но не так как мне нужно... сама толщина линий не увеличивается. Попробовал на новом проекте

Весь код
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, DBGridEhGrouping, ToolCtrlsEh,
  DBGridEhToolCtrls, DynVarsEh, MemTableDataEh, Data.DB, MemTableEh, EhLibVCL,
  GridsEh, DBAxisGridsEh, DBGridEh;

type
  TCustomDBGridEh = class(TDBGridEh)
  public
    property GridLineWidth;
  end;

  TDBGridEh = class(TCustomDBGridEh);

  TForm1 = class(TForm)
    DBGrdEh1: TDBGridEh;
    ds1: TDataSource;
    MemTblEh1: TMemTableEh;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  DBGrdEh1.GridLineWidth:= 25ф;
end;

end.

...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769138
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу заметить, что на обычном гриде (TStringGrid) все прекрасно работает. Вот в чем проблема, в каком методе ехлибовского грида?
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769161
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
afordв каком методе ехлибовского гридаходи в отладке, если уж...
D7, EhLib 5.4
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769280
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ma1tus, у меня не открываются исходники... я прорисовку перекрывал методом тыка, а как через отладчик.. может все же как-то не так делаю? Можно попросить проект, который в последнем сообщении?
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769293
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aford, это твой проект
вся разница, не больше
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics,
  Controls, Forms, Dialogs, ToolCtrlsEh,
  MemTableDataEh, DB, MemTableEh, EhLibVCL,
  GridsEh, DBGridEh, DBGridEhGrouping;

type
  TxCustomDBGridEh = class(DBGridEh.TDBGridEh)
  public
    property GridLineWidth;
  end;

  TDBGridEh = class(TxCustomDBGridEh);

...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769311
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все равно все так же.. сверху dbgrideh, а снизу stringgrid
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769331
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aford,

непонятно: зачем тебе г.мамонта на совр. дельфи, и с чего ты ориентируешься на stringgrid, когда ehgrid вообще другой компонент
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769355
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ma1tus, ориентируюсь так как он схож с dbgrideh и почти та же прорисовка. Если б была возможность использовать др компонент, то уже давно бы перешел, но вынужден сейчас пользоваться dbgrideh с virtualtreeview. Хочу нарисовать на нем кнопки в месте ячеек и иметь возможнсть задавать расстояние между ними, вот как-то так)
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39769363
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
afordкнопки в месте ячеек и иметь возможнсть задавать расстояние между ними
TGridPanel
...
Рейтинг: 0 / 0
GridLineWidth Ehlib (DBGridEh)
    #39770910
aford
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ma1tus, спасибо за помощь. Это хороший компонент, пользовался, но не совсем подходит для моих целей. Решил задачу все же через
ехлибовскую таблицу, но не с небольшими ограничениями. Когда будет достаточно времени - перепишу с использованием Virtual Treeview.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / GridLineWidth Ehlib (DBGridEh)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]