Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader / 17 сообщений из 17, страница 1 из 1
01.09.2017, 19:01:31
    #39514281
Alexander2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Как можно запретить пользователю перетаскивать колонки в columnheader например в cxTreeList cxGrid на другие строки, но приэтом должна оставаться возможность менять позицию столбца. весь мозг сломал, может кто-нибудь знает решение?
...
Рейтинг: 0 / 0
01.09.2017, 21:01:32
    #39514307
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Alexander2000,
после перетаскивания заново устанавливай содержимое колумнхедеров
...
Рейтинг: 0 / 0
01.09.2017, 22:05:32
    #39514328
Alexander2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
чччД,
ну допустим, запоминаю расположение столбца если пользователь поместил столбец во вторую строку то отменяю действие пользователя и возвращаю назад, но это несколько по меньшей мере будет выглядеть странно в плане интерфейса и логики программы: т.е. сначала header показывает пользователю стрелочками допустимые расположения столбца, а после того как пользователь поменяет расположение столбца прога отменяет действие о_О - вот так будет выглядеть пользователь. Это не подходит
...
Рейтинг: 0 / 0
01.09.2017, 22:08:07
    #39514329
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Alexander2000Как можно запретить пользователю перетаскивать колонки в columnheader например в cxTreeList cxGrid на другие строки, но приэтом должна оставаться возможность менять позицию столбца. весь мозг сломал, может кто-нибудь знает решение?
10 раз прочитал и ничего не понял.

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

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

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

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

на скрине видно, что при перетаскивании столбца появляются стрелки, указывающие в какие места можно припарковаться - вот этого я и не хочу
...
Рейтинг: 0 / 0
06.09.2017, 10:49:35
    #39516245
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Код: 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
17.09.2017, 13:40:26
    #39522339
Alexander2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
DimaBr , спасибо, ты просто спас!
...
Рейтинг: 0 / 0
17.09.2017, 16:13:32
    #39522382
Alexander2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
DimaBr, Все работает замечательно, а у тебя есть решение на cxTreeList?
...
Рейтинг: 0 / 0
25.09.2017, 18:57:31
    #39525967
Alexander2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Нужно диактивировать TreeList.OptionsCustomizing.StackedColumns
...
Рейтинг: 0 / 0
25.09.2017, 20:05:17
    #39525983
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Alexander2000DimaBr, Все работает замечательно, а у тебя есть решение на cxTreeList?
У меня нет готовых решений, я сажусь и делаю то что хочет заказчик.
...
Рейтинг: 0 / 0
25.09.2017, 20:21:46
    #39525986
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
DimaBr,

А вот такие костыли как выше 20774710 -- как часто пишутся?
...
Рейтинг: 0 / 0
26.09.2017, 20:05:40
    #39526741
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
JaDiА вот такие костыли как выше 20774710 -- как часто пишутся?
Мой заказчик адекватный, НИ ОДНОГО "костыля" не написано.
Если чего-то в базовой версии нет, то "такого функционала нет".
Все извращения только для форума.
...
Рейтинг: 0 / 0
27.09.2017, 10:15:06
    #39526913
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader
Код: 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
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DevExpress cxTreeList cxGrid Запрет на многострочные колонки в columnheader / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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