Firemonkey Grid Control — отключить перемещение столбца; но разрешить размер столбца

Я использую TGrid в FM и хочу, чтобы пользователи могли изменять размер столбца, но не реорганизовывать столбцы (т.е. перетаскивать и перемещать заголовок столбца). Я пытался изменить многие открытые свойства («Locked», «DragMode», «EnableDrag» и т. д.) — но ничего не дало желаемого эффекта?

В истинном опыте FM; Я предполагаю, что мне, возможно, придется переопределить класс и что-то изменить во внутренней структуре; но я не уверен, что / где - или даже возможно ли это?

Образец источника мудрый; вы можете увидеть проблему, если просто добавите TGrid, добавите несколько столбцов и запустите.

Спасибо заранее. Ян.


person Ian    schedule 18.02.2012    source источник


Ответы (1)


person    schedule
comment
Привет Тз - еще раз спасибо; но я заметил небольшую проблему, которая, скорее всего, связана с тем, как я использую TGrid, и задался вопросом, есть ли способ обойти это? Я использую TGrid для многих различных сценариев, поэтому я уничтожаю столбцы и добавляю их заново. Когда я это делаю, предотвращение перетаскивания теряется. Например, у меня есть TGrid с двумя столбцами добавления вручную. Затем я использую Grid1.ColumnByIndex(1).Destroy; Grid1.ColumnByIndex(0).Destroy; и повторно добавьте 2 новых столбца с помощью Grid1.AddObject(TStringColumn.Create(Grid1)); - на этот раз я могу снова тащить? - Есть ли способ обойти это вообще? - Спасибо - person Ian; 20.02.2012
comment
Решена вышеуказанная проблема (с удалением/повторным созданием элементов сетки), гарантируя, что StyleLookup сбрасывается в сетке после уничтожения/воссоздания ваших столбцов? - Очевидно, какая-то странная логика FM (v1)... (;-› - person Ian; 25.02.2012