powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / cxGrid OnCustomDrawGroupCell отрисовка шапки группы
6 сообщений из 6, страница 1 из 1
cxGrid OnCustomDrawGroupCell отрисовка шапки группы
    #39744649
pahanitto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.

так не погружался в девки... но вот задача.

есть поле... тип операции... там 1-2-3 и тд. надо отрисовать иконку в гриде вместо цифирок.
это все нормально решилось через OnCustomDrawCell .
автор procedure cxGrid1DBTableView1CheckTypeCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
выглядит так



Надо.
При группировке по этому столбцу вместо стндартного текста в группировочной строке выводить иконку...
если я группирую только по этому столбцу то через onDrawGroupCell все работает.
а если группировка по 2м столбцам или по другому я не могу из параметров евента вычленить какой же столбец сейчас группируется...и стоит ли мне что-то рисовать сейчас или нет.
В первом варианте евент был на стлбце а ГроупДроу .... уже от Вьюхи и параметры другие((((
авторOnCustomDrawGroupCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableCellViewInfo; var ADone: Boolean);



Спс.
...
Рейтинг: 0 / 0
cxGrid OnCustomDrawGroupCell отрисовка шапки группы
    #39744651
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pahanittoи стоит ли мне что-то рисовать сейчас или нет.переложи решение на TcxImageComboBoxProperties
...
Рейтинг: 0 / 0
cxGrid OnCustomDrawGroupCell отрисовка шапки группы
    #39744653
pahanitto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
к сожалению это тоже не помогает((... а по старому- никак не могу все связать воедино с этими параметрами еванта. Что-то я совсем уже перестал врубаться(

вот что вышло
...
Рейтинг: 0 / 0
cxGrid OnCustomDrawGroupCell отрисовка шапки группы
    #39744656
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pahanitto,

посмотри топик
...
Рейтинг: 0 / 0
cxGrid OnCustomDrawGroupCell отрисовка шапки группы
    #39744664
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделать колонку как ImageCombobox, в списке картинок добавить нужные ID и дать им названия. В настройках проперти колонки отключить ShowDescription (или как-то) и сделать центровку значка по центру. После чего:
- в колонках будут отображаться значки;
- при фильтрации и в группировках будут отображаться названия, которые были даны в настройках картинок.

Всё. Это стандартное решение для подобных случаев.
...
Рейтинг: 0 / 0
cxGrid OnCustomDrawGroupCell отрисовка шапки группы
    #39744667
pahanitto
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ура. спс за сылочку.

автор- при фильтрации и в группировках будут отображаться названия, которые были даны в настройках картинок.
Вот в этом названии и была проблема... а решается то все просто... 3 строки

вот грязненький код и вуаля
Код: 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.
procedure TfrdocChecks.cxGrid1DBTableView1CustomDrawGroupCell(
  Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
  AViewInfo: TcxGridTableCellViewInfo; var ADone: Boolean);
var
  AIndex, X ,Y, Type_: Integer;
  AColumn: TcxGridDBColumn;
begin
  AIndex := TcxGridGroupRow(AViewInfo.GridRecord).Level;    //вот тут вся загвоздка и была
  AColumn := Sender.GroupedItems[AIndex] as TcxGridDBColumn;  // и тут

  if  AColumn.DataBinding.FieldName = 'FCheckType' then begin  // и проверка поля
    with AViewInfo.Bounds do
    begin
      X := Left + 16;
      Y := (Bottom - Top - 16) div 2 + Top;
    end;
    Type_  := TcxGridGroupRow(AViewInfo.GridRecord).Value;
    if (Type_ < 0) or (Type_ >= fmain.cxilTypeCheck16.Count) then
      Type_ := 0;
    fmain.cxilTypeCheck16.Draw(ACanvas.Canvas, X, Y ,Type_);

     ADone := true; // Надо закрыть или не рисует
  end;
end;



вот и выводит


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


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