Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается? / 7 сообщений из 7, страница 1 из 1
15.06.2020, 22:41
    #39969535
ъъъъъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
В объекте TcxGrid есть три вложенных TcxGridLevel's, в каждом - свой TcxGridTableView.
Вью верхнего и среднего уровней ( 1 и 2 ) не отображают заголовки данных, только сами данные. Вью нижнего уровня ( 3 ) - отображают и заголовки, и данные.

Вручную изменить ширину столбцов уровня 3 я могу мышкой, "потянув" за границу столбцов в заголовке.

Вручную изменить ширину столбцов уровней 1 и 2 я не могу, так как не отображаются заголовки. А очень хочется менять ширину - например, методом перетаскивания вертикальных границ ячеек (вертикальных линий "решетки").
Нет ли какого простого способа добиться желаемого?

Спасибо.
...
Рейтинг: 0 / 0
15.06.2020, 23:34
    #39969544
Сергей Фролов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
ъъъъъ,

Отвечу традиционно, как принято на российских форумах )))
Что-то пошло не так. Эргономика осталась где-то в другой реальности с такими гридами. Может просто переосмыслить и переписать GUI?

P.S. Пока писал автозамена предлагала вместо «гридами» - «грибами». Очень в тему )))
...
Рейтинг: 0 / 0
15.06.2020, 23:40
    #39969545
ъъъъъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
Сергей Фролов,

естественно, я рассчитывал, что будет предложено переработать архитектуру/эргономику/цветовую гамму.

Обязательно вернёмся к этому вопросу - самому хочется! :)
...
Рейтинг: 0 / 0
16.06.2020, 01:07
    #39969547
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
На коленке

Код: 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.
type
THack=class(TcxCustomGridTableItem);

var C: THack;
    L: integer;

procedure TForm1.cxGrid1TableView1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var H: TcxCustomGridHitTest;
begin
  H := cxGrid1TableView1.GetHitTest(X,Y);
  if H is TcxGridRecordCellHitTest then begin
    if (X > TcxGridRecordCellHitTest(H).ViewInfo.Bounds.Right-3)
      then cxGrid1TableView1.Site.Cursor := crHSplit
      else cxGrid1TableView1.Site.Cursor := crDefault;
    if C <> nil then C.Width := X-L;
  end;
end;

procedure TForm1.cxGrid1TableView1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var H: TcxCustomGridHitTest;
begin
  H := cxGrid1TableView1.GetHitTest(X,Y);
  if H is TcxGridRecordCellHitTest then begin
    if (X > TcxGridRecordCellHitTest(H).ViewInfo.Bounds.Right-3)then begin
      C := THack(TcxGridRecordCellHitTest(H).Item);
      L := TcxGridRecordCellHitTest(H).ViewInfo.Bounds.Left;
    end;
  end;
end;

procedure TForm1.cxGrid1TableView1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  C := nil;
end;

...
Рейтинг: 0 / 0
16.06.2020, 03:38
    #39969555
ъъъъъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
DimaBr,

спасибо!
...
Рейтинг: 0 / 0
16.06.2020, 11:04
    #39969641
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
DimaBr,

без шуток, это надо запатентовать
...
Рейтинг: 0 / 0
16.06.2020, 13:15
    #39969724
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TcxGrid: как вручную менять ширину ячейки данных вью, если заголовок не отображается?
Кроик Семён
DimaBr,

без шуток, это надо запатентовать

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


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