powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Порядковый номер строк в cxgrid
17 сообщений из 17, страница 1 из 1
Порядковый номер строк в cxgrid
    #39691602
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, как можно в cxgrid, отображающим данные из базы, в столбце пронумеровать строки по порядку независимо от фильтрации ?
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39691646
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rows и проверка IsData -- визуальные строки (данные, строка фильтра и т.п.)
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39691852
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39691892
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr,
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692001
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
procedure TForm95.cxGrid1TableView1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
  var AText: string);
var
  ADataController: TcxCustomDataController;
  ARowIndex: Integer;
begin
  ADataController := ARecord.GridView.DataController;
  ARowIndex := ADataController.GetRowIndexByRecordIndex(ARecord.RecordIndex, False);
  AText := ADataController.GetRowInfo(ARowIndex).DataRowIndex.ToString;
end;
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692029
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger,

Оффтопик ( просто - кстати ), обратил внимание - локальные переменные "подпрограмм" у DX, имеют, зачастую, тот же префикс, что и входящие параметры.
Это сode style | "так повелось" | ... , или оно вообще не принципиально?
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692057
white_nigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ma1tus,
Принципиально 🙂 Чтоб сразу видно было что это переменные, а не свойства класса
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692098
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger,

Благодарю ) Как вербализировал - то же дошло )
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692114
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
white_niggerma1tus,
Принципиально 🙂 Чтоб сразу видно было что это переменные, а не свойства класса

очень странное разделение
у меня префикс "a" - аргумент подпрограммы, "v" -локальная переменная
и никогда не путался

но хозяин - барин
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692140
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы копипастить код было проще из разных событий и процедур :-)
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692612
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
white_nigger
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
procedure TForm95.cxGrid1TableView1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
  var AText: string);
var
  ADataController: TcxCustomDataController;
  ARowIndex: Integer;
begin
  ADataController := ARecord.GridView.DataController;
  ARowIndex := ADataController.GetRowIndexByRecordIndex(ARecord.RecordIndex, False);
  AText := ADataController.GetRowInfo(ARowIndex).DataRowIndex.ToString;
end;



А проще нельзя сделать:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
procedure TfrmMainList.tvMainColumn4GetDisplayText
  (Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
  var AText: string);
begin
  inherited;
  AText := IntToStr(ARecord.Index + 1);
end;
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692615
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
wsnetwhite_nigger
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
procedure TForm95.cxGrid1TableView1Column1GetDisplayText(Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
  var AText: string);
var
  ADataController: TcxCustomDataController;
  ARowIndex: Integer;
begin
  ADataController := ARecord.GridView.DataController;
  ARowIndex := ADataController.GetRowIndexByRecordIndex(ARecord.RecordIndex, False);
  AText := ADataController.GetRowInfo(ARowIndex).DataRowIndex.ToString;
end;




А проще нельзя сделать:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
procedure TfrmMainList.tvMainColumn4GetDisplayText
  (Sender: TcxCustomGridTableItem; ARecord: TcxCustomGridRecord;
  var AText: string);
begin
  inherited;
  AText := IntToStr(ARecord.Index + 1);
end;



RowIndex и RecordIndex разные вещи
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692624
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,
в чем отличие ?
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692627
Фотография wsnet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Также заметил, если сравнить применение CalcField и Unbound column при построение значения в добавляемой колонке, последний вариант выигрывает в скорости. С чем это связано ?
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692639
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet,

row -- визуальная строка, там могут быть как данные, так и другие элементы типа группировки или строки фильтрации.
record -- физическая запись с данными.

Разницу можно увидеть в четвертом посте наглядно (когда берется row без учета того, что внутри): 21650955
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692825
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnet, на случай если у тебя там вдруг группировка возникнет см. 17736515
там правда после
int const RowIndex=dc->GetRowIndexByRecordIndex(ARecordIndex,true);
надо добавить
if(-1==RowIndex)return; /* TODO -ovavan -csic :
-1 => NewItemRow
https://www.devexpress.com/Support/Center/Question/Details/T357334 */
...
Рейтинг: 0 / 0
Порядковый номер строк в cxgrid
    #39692826
vavan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wsnetзаметил, если сравнить применение CalcField и Unbound column при построение значения в добавляемой колонке, последний вариант выигрывает в скоростилюбопытно бы пример взглянуть
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Порядковый номер строк в cxgrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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