2009-10-27 4 views
5

Сначала я хочу: возможность отображения сетки с несколькими столбцами, каждая ячейка имеет собственный обратный вызов рендеринга. Таким образом, вы можете использовать такой элемент управления для отображения своего инвентаря в игре или что-то вроде поведения в Google Chrome, где он показывает сетку популярных страниц, которые вы посещаете.Имеет ли MFC встроенный контроль сетки?

Я играл с CListCtrl, и пока я могу получить возможность персонализированного рендеринга для каждого элемента, я не могу заставить его работать со столбцами - скажем, 3 элемента в строке. Элемент управления имеет связанные с столбцом методы, но я думаю, что это специально для встроенных функций, в которых разные атрибуты элемента отображаются автоматически в каждом столбце ... не для обеспечения общего управления сеткой.

Итак, существует ли такая функциональность в MFC? Если нет, то я задаюсь вопросом, самый простой подход для меня фактически вставить каждую из строк в качестве элемента ..., а затем пользовательский рендеринг рисует несколько ячеек в строке, я также могу сделать пользовательский интерфейс для поддержки щелчка по ячейкам ,

Но я действительно хочу, чтобы создать пользовательский элемент управления и добавить его как элемент в список - например, в Flex, так что I/O и т. Д. Автоматически обрабатываются.

Любые советы/информация Добро пожаловать ...

ответ

2

Я не в курсе встроенный контроль, но я думаю, вы должны смотреть на this. В статье подробно описывается функциональность полнофункционального управления сеткой MFC, полученная из CWnd, для отображения табличных данных.

+0

Я столкнулся с этим контролем; кажется, что это, вероятно, делает то, что нужно, но это может быть борьба, попадающая в наш проект. –

+0

Нет боли, нет выгоды – luvieere

+0

Я использую это в коммерческом приложении. Развертывание легко. Было несколько тонких ошибок, которые мы должны были исправить. В целом отличный контроль и полностью настраиваемый - у вас есть источник. –

10

Dundas имеет некоторые из своих (превосходных) компонентов в общественном достоянии. Их Ultimate Grid доступен на CodeProject.

1

YOUR_LIST_CONTROL .SetExtendedStyle (LVS_EX_FULLROWSELECT | LVS_EX_INFOTIP | LVS_EX_GRIDLINES);

Я думаю, это поможет вам

Смежные вопросы