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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2008, 19:15   #1
aslanbek
Пользователь
 
Регистрация: 09.11.2007
Сообщений: 21
По умолчанию Координаты ячейки в StringGrid???

Как узнать координаты выделенной ячейки в StringGrid?
aslanbek вне форума Ответить с цитированием
Старый 14.03.2008, 19:21   #2
andrey4623
Форумчанин
 
Аватар для andrey4623
 
Регистрация: 31.05.2007
Сообщений: 266
По умолчанию

StringGrid1.Selection.Left - от левого края
StringGrid1.Selection.Top - от верхнего края
andrey4623 вне форума Ответить с цитированием
Старый 14.03.2008, 19:29   #3
aslanbek
Пользователь
 
Регистрация: 09.11.2007
Сообщений: 21
По умолчанию

огромное спасибо !!! работает

Последний раз редактировалось aslanbek; 14.03.2008 в 19:31.
aslanbek вне форума Ответить с цитированием
Старый 14.03.2008, 19:39   #4
aslanbek
Пользователь
 
Регистрация: 09.11.2007
Сообщений: 21
По умолчанию

а если я выберу несколько ячеек.
Как узнать последную выделенную ячейку?
aslanbek вне форума Ответить с цитированием
Старый 14.03.2008, 19:50   #5
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Поставьте точку после StringGrid1.Selection, выпадет полный список всех параметров:
Код:
  TGridCoord = record
    X: Longint;
    Y: Longint;
  end;

  TGridRect = record
    case Integer of
      0: (Left, Top, Right, Bottom: Longint);
      1: (TopLeft, BottomRight: TGridCoord);
  end;
_Dmitry вне форума Ответить с цитированием
Старый 14.03.2008, 20:14   #6
aslanbek
Пользователь
 
Регистрация: 09.11.2007
Сообщений: 21
По умолчанию

Получилось! спасибо
aslanbek вне форума Ответить с цитированием
Старый 01.08.2014, 16:16   #7
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Задам уж сюда вопрос, т.к. к заголовку подходит.
А как узнать какая ячейка находится под курсором мыши?
Точнее, мне нужно узнать по какой ячейке произошёл двойной щелчок. По MouseDown определяю координаты. Но это "мышиные" координаты. Как их перевести в номер ячейки, которой они соответствуют? Первая мысль - X/ширину ячейки. Но ведь ячейки могут быть разной ширины. Складывать по-очереди, пока X не станет меньше суммы ширин? Типа такого:
Код:
  i_w:=0;
  i:=-1;
  repeat
    inc(i);
    i_w:=i_w+StringGrid1.ColWidths[i];
  until i_w>SGKCoors.X;
  j_h:=0;
  j:=-1;
  repeat
    inc(j);
    j_h:=j_h+StringGrid1.RowHeights[j];
  until j_h>SGKCoors.Y;
В результате i и j - номера ячеек по горизонтали и вертикали соответственно.
Можно и так, конечно, но, возможно, существует лучший и более простой вариант?

Последний раз редактировалось Ship_1; 01.08.2014 в 16:28.
Ship_1 вне форума Ответить с цитированием
Старый 01.08.2014, 16:29   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

методом грида MouseToCell() или MouseCoord() - тут уж выбирать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.08.2014, 16:30   #9
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Класс! Спасибо!
Но к мыши сам даблклик всё равно никак не привязать без MouseDown, да?..

Последний раз редактировалось Ship_1; 01.08.2014 в 16:34.
Ship_1 вне форума Ответить с цитированием
Старый 01.08.2014, 16:36   #10
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от Ship_1 Посмотреть сообщение
Класс! Спасибо!
Но к мыши сам даблклик всё равно никак не привязать без MouseDown, да?..
да нет, можно координаты курсора запросить
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать какие ячейки у StringGrid-а видимы? Sergey2 Компоненты Delphi 2 04.06.2008 13:57
можно ли в stringgrid задавать размер конкретной ячейки SeЯgey Помощь студентам 3 26.04.2008 18:47
Delphi: Сортировка строк в StringGrid, критерий - элемент ячейки Andris Помощь студентам 9 09.03.2008 23:04
скрыть ячейки в таблице StringGrid РИЯ Компоненты Delphi 4 22.10.2007 08:15
как определить координаты ячейки с найденным текстом Тимониссимо Безопасность, Шифрование 2 30.05.2007 15:23