Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2013, 09:49   #11
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
разве в событиях мыши нет координат?
Идея была в следующем - человек щелкает на столбец таблицы и вводит туда дату (вручную или из датного диалога DateEdit). Поначалу я расстроился, что нормальный Стринггрид такими способностями не обладает, но потом решил не заморачиваться и просто повесил один невидимый DateEdit на форму. Вот он и должен появляться и подменять собой ячейку СтрингГрида в строго определенном столбце. Это глобальная задача. Локальная же задача заключается в вычислении координат той ячейки, которую следует заменить dateEdit'ом. Так вот оказалась имеющиеся условия совершенно не способствуют этому:
1) Событие клика не передает координат мыши (а мне надо)
2) DateEdit имеет координаты в системе отсчета формы
3) Курсор мыши имеет координаты в системе отсчета экрана (а это значит, что при перемещении формы одно и тоже место будет иметь разные координаты)
4) Ячейка имеет координаты в системе отсчета СтрингГрида
Короче с наскока такой вопрос не решился
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 13.11.2013, 10:11   #12
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Событие клика не передает координат мыши (а мне надо)
А они и не нужны. Зато известны гридовы координаты ячейки, по которым легко вычисляются её пикселевы координаты в любой системе отчета
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 13.11.2013, 11:18   #13
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Зато известны гридовы координаты ячейки, по которым легко вычисляются её пикселевы координаты в любой системе отчета
Об этом я еще не подумал. Направление подскажите?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 13.11.2013, 11:25   #14
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

В посте #4 это и написал, только не привел к координатам относительно формы. Здесь привел
Код:
procedure TForm1.StringGrid1Click(Sender: TObject);
var xRect: TRect;
    xPoint: TPoint;
begin
  xRect:=StringGrid1.CellRect(StringGrid1.Col,StringGrid1.Row);
  xPoint:=ScreenToClient(StringGrid1.ClientToScreen(Point(xRect.Left,xRect.Top)));
//xPoint - координаты ячейки относительно формы
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Координаты ячейки в StringGrid??? aslanbek Общие вопросы Delphi 13 01.08.2014 16:53
Как определить координаты ячейки внутри функции вызываемой как формула из ячейки? RISagitov Microsoft Office Excel 3 07.03.2013 19:45
Получить координаты ячейки в CxGrid Andrey85 Компоненты Delphi 3 30.10.2011 16:32
как определить координаты ячейки с найденным текстом Тимониссимо Безопасность, Шифрование 2 30.05.2007 15:23