Примерно в 1998 году я устал от TStringGrid и начал долгий путь за границу.Я активно использовал виртуальные элементы управления представлением сетки, в том числе ExGridView Романа Мочалева (перенесенный на Delphi 2010 / XE здесь ) и элемент управления квантовой сеткой Developer Express, а также комплект печати, который поставляется вместе с ним, а также Virtual Tree View.Майк Лишке.Да.Это вид дерева.Но если вы не создадите несколько уровней узлов, это тоже делает довольно большую виртуальную сетку.
В конце концов, ни один из них не совершенен.Требования вашего приложения могут включать в себя:
Печать.Если это так, я бы пошел к компонентам Developer Express , так как их компонент сетки и другие компоненты имеют встроенную поддержку печати в их наборе печати.
Многопо индивидуальному заказу, но без печати.Если это так, я бы вернулся к VCL TDrawGrid , потому что в противном случае вам будут мешать более сложные системы покраски.
Сохраняя это простым.Если это так, я рекомендую ExGridView компонент .Все остальные решения, кажется, помогают мне на 98% пути и требуют тонны технического обслуживания, чтобы решить нестандартные проблемы с окраской, проблемы с печатью или что-то еще.Если все, что вам нужно, это виртуальная сетка в стиле Windows 2000, отображающая данные из вашей модели, используйте ExGridView.
Может потребоваться вложение узлов (дерева) в будущем.Тогда просто начните с VirtualTreeView сейчас, и используйте его как сетку, а затем плавно добавьте функциональность дерева позже.
В вашем случае возможно множество дополнительных «дополнительных требований»,чем я могу придумать и перечислить здесь.Но именно эти «также» вещи будут (или должны) диктовать ваш выбор.Ваше приложение должно работать 24/7 / 365.25?Ну, тогда будь проще и избегай всяких изысков, которые тебе позже повредят.
Поскольку вы заявляете, что вам нужна печать, красиво выглядящая тематическая живопись и у вас уже есть компоненты Developer Express, это был бы самый логичный выбор # 1.Это стабильный, зрелый и высококачественный комплект компонентов.Для других людей, которые рассматривают этот вопрос позже, мое единственное предостережение в том, что это сложное, тяжеловесное решение, и оно не подходит для 100% всех приложений Delphi, которым «просто нужна работоспособная сетка лучше, чем TStringGrid».DevEx Quantum Grid может копировать практически все функции сетки, которые вы когда-либо видели в Outlook, например, включая функцию «группировать по».