powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Каким методом покрасить строку в cxDBPivotGrid
25 сообщений из 33, страница 1 из 2
Каким методом покрасить строку в cxDBPivotGrid
    #39889356
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!
Стала счастливым обладателем программки с cxDBPivotGrid. Пользователи хотят покрасить строки итогов сериньким. Под это дело завела компонент cxStyleRepository. Строки с итогами считаются на сервере БД и просто выводятся (так поняла, не через Total).
Хочу покрасить строки, где в столбце есть значение "Всего...". Нигде в интернетах не могу найти пример именно по этому компоненту.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889367
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Jane CHER
Доброго времени суток!
Стала счастливым обладателем программки с cxDBPivotGrid. Пользователи хотят покрасить строки итогов сериньким. Под это дело завела компонент cxStyleRepository. Строки с итогами считаются на сервере БД и просто выводятся (так поняла, не через Total).
Хочу покрасить строки, где в столбце есть значение "Всего...". Нигде в интернетах не могу найти пример именно по этому компоненту.


насколько я помню, надо обработчик на onCustomDrawCell повесить.
Туда приходит ViewInfo: TcxPivotGridDataCellViewInfo, в котором надо проверить свойство IsTotal/IsGrandTotal
Ну и если True, то раскрасить клеточку
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889387
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jane CHER,

OnGetContentStyle
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889432
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
defecator

насколько я помню, надо обработчик на onCustomDrawCell повесить.
Туда приходит ViewInfo: TcxPivotGridDataCellViewInfo, в котором надо проверить свойство IsTotal/IsGrandTotal
Ну и если True, то раскрасить клеточку


Ага, пробовала через этот метод, но у меня итоги не через Total считаются, поэтому затык.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889434
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub
OnGetContentStyle


А тут как, если без использования TcxPivotGridDataCellViewInfo?
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889437
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jane CHER
zinpub
OnGetContentStyle


А тут как, если без использования TcxPivotGridDataCellViewInfo?


А почему надо без?
Я, вероятно, не понял сути. Как определяется логически, что ячейку надо красить?
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889438
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub
Jane CHER
пропущено...


А тут как, если без использования TcxPivotGridDataCellViewInfo?


А почему надо без?
Я, вероятно, не понял сути. Как определяется логически, что ячейку надо красить?


То есть, чем отличается строка с итогами?
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889452
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub
zinpub
пропущено...


А почему надо без?
Я, вероятно, не понял сути. Как определяется логически, что ячейку надо красить?


То есть, чем отличается строка с итогами?


Строка с итогами у меня ничем не отличается от строки с данными - вычисляется не дельфой, а сервером БД.

Я, к сожалению, с пивот гридами пока на "вы, извините". Может, и ошибаюсь. :-) В моем гриде, оказывается, установлена в true многообещающе выглядящая переменная GrandTotalsForSingleValues, а каким образом это влияет на итоги и какое именно Single Value имеется в виду - хз.

Это вот точно не работает.

procedure TForm.PivotGrid1StylesGetContentStyle(
Sender: TcxCustomPivotGrid; ACell: TcxPivotGridDataCellViewInfo;
var AStyle: TcxStyle);
var i: integer;
begin

if (AnsiPos('Всего по цеху',VartoStr(ACell.Value)) > 0) then AStyle := Style_Itogi;
if (AnsiPos('Всего по участку',VartoStr(ACell.Value)) > 0) then AStyle := Style_Itogi;
end;
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889456
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jane CHER,

Увидеть бы это...
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889460
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub
Jane CHER,

Увидеть бы это...


Попробую что-нибудь придумать, чтоб безопасники по головке слишком сильно не погладили.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889492
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub
Jane CHER,

Увидеть бы это...


Программку писал очень грамотный мальчик, по наследству досталось. Если sql-код читать нараспев, так и вовсе сотону можно вызвать.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889504
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jane CHER,

Соответственно Всего по участку является Наименование

Тогда в ACell находим значение столбца Наименование для данной строки и коли он подходит под шаблон... то красим
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889506
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub, попробую. :-)

Наименование у нас будет через ACell.ColumnIndex=... ?
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889511
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jane CHER
zinpub
OnGetContentStyle


А тут как, если без использования TcxPivotGridDataCellViewInfo?


Чё за фигня вааще! :)

Код: pascal
1.
TcxDBPivotGrid.Styles.OnGetContentStyle : TcxPivotGridGetContentStyleEvent


=>
Код: pascal
1.
2.
  TcxPivotGridGetContentStyleEvent = procedure(Sender: TcxCustomPivotGrid;
    ACell: TcxPivotGridDataCellViewInfo; var AStyle: TcxStyle) of object;


=>
Код: pascal
1.
2.
3.
4.
5.
6.
  TcxPivotGridDataCellViewInfo = class(TcxPivotGridEditContainerViewInfo)
...
    property IsGrandTotal: Boolean read GetIsGrandTotal;
    property IsTotal: Boolean read GetIsTotal;
...
  end;



Андырстэнд?
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889514
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jane CHER
zinpub, попробую. :-)

Наименование у нас будет через ACell.ColumnIndex=... ?


Посмотрите https://www.devexpress.com/Support/Center/Question/Details/Q449673/how-can-i-change-font-color-in-the-pivotgrid-row-or-data-column
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889522
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ёёёёё,

Сами Вы фигня!
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889523
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ёёёёё


Андырстэнд?


С трудом. Но за ответ спасибо.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889524
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jane CHER,

ОК.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889525
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub
Jane CHER
zinpub, попробую. :-)

Наименование у нас будет через ACell.ColumnIndex=... ?


Посмотрите https://www.devexpress.com/Support/Center/Question/Details/Q449673/how-can-i-change-font-color-in-the-pivotgrid-row-or-data-column


Вот в переложение под Style's

Код: pascal
1.
2.
3.
4.
5.
6.
procedure TForm1.cxDBPivotGrid1StylesGetContentStyle(Sender: TcxCustomPivotGrid;
  ACell: TcxPivotGridDataCellViewInfo; var AStyle: TcxStyle);
begin
  if ACell.Row.Value = 'Name2' then AStyle := stlRed else AStyle:= stlNorm;

end;
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889526
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub,

Ок, спасибо за рекомендации и понимание! :-) Если одолею - постараюсь не забыть отписаться.
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889530
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jane CHER
С трудом.

Ну ё.

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
...
cxGrayStyle: TcxStyle;
..
procedure TMyForm.MycxDBPivotGridStylesGetContentStyle(Sender: TcxCustomPivotGrid;
  ACell: TcxPivotGridDataCellViewInfo; var AStyle: TcxStyle);
begin
  if ACell.IsGrandTotal then
    AStyle := cxGrayStyle
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889542
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ёёёёё
Jane CHER
С трудом.

Ну ё.

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
...
cxGrayStyle: TcxStyle;
..
procedure TMyForm.MycxDBPivotGridStylesGetContentStyle(Sender: TcxCustomPivotGrid;
  ACell: TcxPivotGridDataCellViewInfo; var AStyle: TcxStyle);
begin
  if ACell.IsGrandTotal then
    AStyle := cxGrayStyle



Тогда суммы считаются самим Pivot'ом
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889548
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zinpub
...
Тогда суммы считаются самим Pivot'ом

А, ну да ж...

Jane CHER
Строки с итогами считаются на сервере БД и просто выводятся (так поняла, не через Total).
Хочу покрасить строки, где в столбце есть значение "Всего...".
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889549
Jane CHER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zinpub, ок, запомню на будущее. Судя по картинке, GrandTotal у нас ведь нигде нет?
...
Рейтинг: 0 / 0
Каким методом покрасить строку в cxDBPivotGrid
    #39889602
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jane CHER,

Неа
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Каким методом покрасить строку в cxDBPivotGrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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