Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Software Design > Как лучше делать таблицу?


Автор: Ирокез 09.07.19, 05:22
Набрать из эдитов для каждой ячейки? Или обойтись одним окном, самому его разлиновать и обработать редактирование текста ячеек, выделение, буфер обмена и перемещение каретки? Одна таблица у меня уже есть, но там не требуется редактирование текста, да и вообще поддержка какого-то текста в ячейках, в ячейку можно только вставить графику, причём, только с клавиатуры, а буфер вообще не стандартного формата и работает не с отдельными ячейками, а только с таблицей в целом и только прямоугольными выделениями. Сделал одним окном. А как делать, если в ячейках будет редактируемый текст и каретка? Вопрос не в каждой закорючке, а какой подход к разработке таблиц принято юзать.

Автор: Ирокез 09.07.19, 12:53
И ответ будет использовать готовый компонент TStringGrid. Мне он не подходит именно потому, что я буду использовать Win API, а не VCL.

Автор: JoeUser 09.07.19, 13:53
Скрытый текст
Давай дождемся ответа.
Я уже упоминал о правильности и полноты инфы в задаваемом вопросе.
Жди ответа на Вижуал Васике)

Автор: Маршал 18.06.20, 12:25
Цитата
использовать Win API

Сделать невидимое поле ввода hwndEdit
Нарисовать таблицу обрабатывая сообщение PAINT, по координатам мыши отследить место клика и в нужном месте
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    ShowWindow(hwndEdit, SW_SHOW);

затем при клике за пределами поля ввода сохранить в таблицу, перерисовать, поле ввода скрыть

Автор: scrambrella 04.12.21, 12:15
Использовать методы MS Excel с помощью соответствующего API.

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)