Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Порядковый номер строк в cxgrid / 17 сообщений из 17, страница 1 из 1
22.08.2018, 11:42
    #39691602
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
Коллеги, как можно в cxgrid, отображающим данные из базы, в столбце пронумеровать строки по порядку независимо от фильтрации ?
...
Рейтинг: 0 / 0
22.08.2018, 12:15
    #39691646
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
Rows и проверка IsData -- визуальные строки (данные, строка фильтра и т.п.)
...
Рейтинг: 0 / 0
22.08.2018, 15:40
    #39691852
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
...
Рейтинг: 0 / 0
22.08.2018, 16:08
    #39691892
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
DimaBr,
...
Рейтинг: 0 / 0
22.08.2018, 19:03
    #39692001
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
Код: 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
22.08.2018, 21:38
    #39692029
ma1tus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
white_nigger,

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

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

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

но хозяин - барин
...
Рейтинг: 0 / 0
23.08.2018, 08:18
    #39692140
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
Чтобы копипастить код было проще из разных событий и процедур :-)
...
Рейтинг: 0 / 0
23.08.2018, 19:46
    #39692612
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
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
23.08.2018, 19:51
    #39692615
defecator
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
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
23.08.2018, 20:11
    #39692624
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
defecator,
в чем отличие ?
...
Рейтинг: 0 / 0
23.08.2018, 20:20
    #39692627
wsnet
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
Также заметил, если сравнить применение CalcField и Unbound column при построение значения в добавляемой колонке, последний вариант выигрывает в скорости. С чем это связано ?
...
Рейтинг: 0 / 0
23.08.2018, 20:38
    #39692639
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
wsnet,

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

Разницу можно увидеть в четвертом посте наглядно (когда берется row без учета того, что внутри): 21650955
...
Рейтинг: 0 / 0
24.08.2018, 09:58
    #39692825
vavan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
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
24.08.2018, 09:59
    #39692826
vavan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Порядковый номер строк в cxgrid
wsnetзаметил, если сравнить применение CalcField и Unbound column при построение значения в добавляемой колонке, последний вариант выигрывает в скоростилюбопытно бы пример взглянуть
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Порядковый номер строк в cxgrid / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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