| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Звук, графика и видео > Подскажите компонент для сетки |
| Автор: jingoCSS 15.1.2010, 16:42 |
| С помощью какого компонента можно реализовать такую сетку? |
| Автор: artsb 16.1.2010, 12:47 |
| Используйте TStringGrid или TDrawGrid. Или можете рисовать на битмапе, а потом выводить его в Image или ещё куда-нибудь. |
| Автор: jingoCSS 16.1.2010, 14:19 |
| А эти компоненты стандартные?? (я в Delphi 7 работаю) Эту сетку можно масштабировать, рисунок врядли подойдёт. |
| Автор: artsb 16.1.2010, 14:23 |
Да. Почему же. Если постараться, можно всё сделать. |
| Автор: jingoCSS 16.1.2010, 14:25 |
| А, всё, нашёл эти grid-ы, мож покатят. Не знаешь на них можно графики рисовать ? ссылки на инфу по этим gridam нет? |
| Автор: artsb 16.1.2010, 17:35 |
| jingoCSS, у вас задача какая? Просто отобразить график? Или нужно, чтобы он был кликабельный? Если просто отобразить, то проще будет (как я уже говорил и как говорит Демо) использовать Битмап. Например, можно разместить ScrollBox, а в него положить Image. Это чтобы прокрутка была Если же нужна поддержка кликабельности, то лучше юзать TStringGrid (ну или TDrawGrid). Так будет проще узнать где пользователь кликнул. Но суть в том же: рисуете всё что вам нужно во временном Битмапе, а потом проецируете его на сетку Грида. Здесь важный момент - учитывать прокрутку Грида, а не то будет куча артефактов. |
| Автор: jingoCSS 16.1.2010, 20:52 |
| нет, кликабельность не нужна, главное нарисовать график (график примерно похож на кардиограмму сердца). Господа, спасибо за ответы, буду гуглить и пробывать, в случае чего опять появлюсь здесь. |
| Автор: jingoCSS 16.1.2010, 21:33 |
| вот такое вот должно быть |
| Автор: artsb 16.1.2010, 21:34 |
| Раз кликабельность не нужна, реализовывайте первый способ. |
| Автор: AntonN 16.1.2010, 22:04 |
| если нужна кликабельность не нужно юзать Грид, он не предназначен для этого, какой толк знать в какой ячейке кликнули если линии кривые? Юзать так же битмап, рисовать на Painbox, у пейнбокса есть MouseDown. Зная координаты клика можно вычислить по какой линии щелкнули (мы же их нарисовали сами? значит все их точки нам известны). В крайнем случае рисовать линии разными цветами на маске и при клике на PaintBox смотреть какой цвет на координатах клика на маске |
| Автор: Демо 17.1.2010, 21:09 |
| Вот ещё посмотри: http://forum.sources.ru/index.php?showtopic=282785 |
| Автор: Dimonka2 18.1.2010, 12:14 |
| Кладёшь TScrollBox, на него TPaintBox. Размер графику задаёшь через TScrollBox, а рисуешь и обрабатываешь клики на TPaintBox. |