Я хочу показать всплывающую кнопку или необычное сообщение (с цветным фоном и т. д.) прямо под правым нижним углом конкретной ячейки текущей строки.
Пока я только понял, как получить координаты сетки:
x = DBGrid.DataSource.DataSet.RecNo
y = DBGrid.Columns[index]
Также есть TCustomGrid.CellRect, который будет делать то, что я хочу, но он защищен, и я не хочу наследовать и создавать еще один класс компонента.
Один сумасшедший обходной путь, который я могу придумать, - это сохранить TRect-s в событии onDrawColumnCell в какой-то массив.
Так что ты думаешь ?
EDIT
Как получить координаты экрана, скажем, второй ячейки в текущей строке?
RecNo
ничего не значит; Порядок индекса может повлиять на порядок строк,Columns[Index]
дает вам столбец, но не строку, и сохранение координат вOnDrawColumnCell
не поможет, так как он не имеет отношения к текущей строке в сетке, кроме как во время рисования ячейки. (У меня нет решения, которое я мог бы предложить (пока), но я вижу недостатки в том, что вы думаете сделать.) - person Ken White   schedule 20.02.2012