powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
17 сообщений из 17, страница 1 из 1
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514281
Alexander2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как можно запретить пользователю перетаскивать колонки в columnheader например в cxTreeList cxGrid на другие строки, но приэтом должна оставаться возможность менять позицию столбца. весь мозг сломал, может кто-нибудь знает решение?
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514307
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2000,
после перетаскивания заново устанавливай содержимое колумнхедеров
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514328
Alexander2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД,
ну допустим, запоминаю расположение столбца если пользователь поместил столбец во вторую строку то отменяю действие пользователя и возвращаю назад, но это несколько по меньшей мере будет выглядеть странно в плане интерфейса и логики программы: т.е. сначала header показывает пользователю стрелочками допустимые расположения столбца, а после того как пользователь поменяет расположение столбца прога отменяет действие о_О - вот так будет выглядеть пользователь. Это не подходит
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514329
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2000Как можно запретить пользователю перетаскивать колонки в columnheader например в cxTreeList cxGrid на другие строки, но приэтом должна оставаться возможность менять позицию столбца. весь мозг сломал, может кто-нибудь знает решение?
10 раз прочитал и ничего не понял.

Как можно запретить менять столбцы, при этом чтобы можно было менять столюцы
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514330
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2000,

Ты уже второй раз перемещаешь столбец в строку. Выносишь мозг.
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514331
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBrAlexander2000Как можно запретить пользователю перетаскивать колонки в columnheader например в cxTreeList cxGrid на другие строки, но приэтом должна оставаться возможность менять позицию столбца. весь мозг сломал, может кто-нибудь знает решение?
10 раз прочитал и ничего не понял.

Как можно запретить менять столбцы, при этом чтобы можно было менять столюцы
Может быть, хочет перемещать содержимое столбца, не меняя хэдер.
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514333
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вроде не весна, а все равно - какой-то парад косноязычия.
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514334
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор хочет перемещать колонки по горизонтали, а по высоте это перемещение запретить (т.е. чтобы у столбцов Position.RowIndex всегда был в 0).
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39514336
Alexander2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД,

ну извините :( Должно быть разрешено: разрешено менять позицию столбца в рамках первой строки Должно быть запрещено: перемещать столбец во вторую, третью т.д. строки

на скрине видно, что при перетаскивании столбца появляются стрелки, указывающие в какие места можно припарковаться - вот этого я и не хочу
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39516245
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
type
TMycxGridBandedHeaderViewInfo = class(TcxGridBandedHeaderViewInfo)
  function GetZone(const P: TPoint): TcxGridItemContainerZone; override;
end;

TMycxGridBandedTableViewInfo = class(TcxGridBandedTableViewInfo)
  function GetHeaderViewInfoClass: TcxGridHeaderViewInfoClass;override;
end;

TcxGridBandedTableView = class(cxGridBandedTableView.TcxGridBandedTableView)
   function GetViewInfoClass: TcxCustomGridViewInfoClass;override;
end;


  TForm1 = class(TForm)
    cxGrid1Level1: TcxGridLevel;
    cxGrid1: TcxGrid;
    cxGrid1BandedTableView1: TcxGridBandedTableView;
    cxGrid1BandedTableView1Column1: TcxGridBandedColumn;
    cxGrid1BandedTableView1Column2: TcxGridBandedColumn;
    cxGrid1BandedTableView1Column3: TcxGridBandedColumn;
    cxGrid1BandedTableView1Column4: TcxGridBandedColumn;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
implementation

{$R *.dfm}

{ TcxGridBandedTableView }

function TcxGridBandedTableView.GetViewInfoClass: TcxCustomGridViewInfoClass;
begin
  Result := TMycxGridBandedTableViewInfo;
end;

{ TMycxGridBandedTableViewInfo }

function TMycxGridBandedTableViewInfo.GetHeaderViewInfoClass: TcxGridHeaderViewInfoClass;
begin
  Result := TMycxGridBandedHeaderViewInfo;
end;

{ TMycxGridBandedHeaderViewInfo }

function TMycxGridBandedHeaderViewInfo.GetZone(const P: TPoint): TcxGridItemContainerZone;
var AHitTest: TcxCustomGridHitTest;
begin
  Result := nil;
  AHitTest := GridViewInfo.GetHitTest(P);
  if AHitTest is TcxGridBandHitTest then
    if TcxGridBandHitTest(AHitTest).VisibleRowIndex > 0 then Exit;
  Result := inherited GetZone(P);
end;

end.
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39522339
Alexander2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DimaBr , спасибо, ты просто спас!
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39522382
Alexander2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DimaBr, Все работает замечательно, а у тебя есть решение на cxTreeList?
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39525967
Alexander2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно диактивировать TreeList.OptionsCustomizing.StackedColumns
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39525983
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander2000DimaBr, Все работает замечательно, а у тебя есть решение на cxTreeList?
У меня нет готовых решений, я сажусь и делаю то что хочет заказчик.
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39525986
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr,

А вот такие костыли как выше 20774710 -- как часто пишутся?
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39526741
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaDiА вот такие костыли как выше 20774710 -- как часто пишутся?
Мой заказчик адекватный, НИ ОДНОГО "костыля" не написано.
Если чего-то в базовой версии нет, то "такого функционала нет".
Все извращения только для форума.
...
Рейтинг: 0 / 0
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
    #39526913
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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.
43.
44.
45.
type
TMycxTreeListDragAndDropColumnObject = class(cxTL.TcxTreeListDragAndDropColumnObject)
   procedure CheckDragPosition; override;
end;

TcxTreeList = class(cxTL.TcxTreeList)
  function GetDragAndDropObjectClass: TcxDragAndDropObjectClass;override;
end;


  TForm1 = class(TForm)
    cxTreeList1: TcxTreeList;
    cxTreeList1Column1: TcxTreeListColumn;
    cxTreeList1Column2: TcxTreeListColumn;
    cxTreeList1Column3: TcxTreeListColumn;
    Timer1: TTimer;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}


{ TcxTreeList }

function TcxTreeList.GetDragAndDropObjectClass: TcxDragAndDropObjectClass;
begin
  Result := inherited GetDragAndDropObjectClass;
  if Result = TcxTreeListDragAndDropColumnObject then Result := TMycxTreeListDragAndDropColumnObject;
end;

{ TMycxTreeListDragAndDropColumnObject }

procedure TMycxTreeListDragAndDropColumnObject.CheckDragPosition;
begin
  inherited CheckDragPosition;
  if DropInfo.RowIndex > 0 then DropInfo.Position := posNone;
end;
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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