![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Hint для DrawGrid [D5, Win95/98, WinXP]
Евгений Р. © (2006-03-13 23:55:00)Как сделать hint для DrawGrid индивидуально для каждой ячейки?
Leonid Troyanovsky (2006-03-14 18:54:00) [1]
> Евгений Р. (13.03.06 23:55)
> Как сделать hint для DrawGrid индивидуально для каждой ячейки?
Для демонстрации подхода only
{ShowHint = True}
type
TDBGridEx = class(TDBGrid);
procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
GridCoord : TGridCoord;
OldActiveRecord : Integer;
begin
with TDBGridEx(Sender) do
begin
GridCoord := MouseCoord(HitTest.X, HitTest.Y);
if (GridCoord.X >= FixedCols)
and (GridCoord.Y >= FixedRows) then
begin
if (GridCoord.Y <> OldRowIndex) or (GridCoord.X <> OldColIndex) then
begin
Application.CancelHint;
OldActiveRecord := DataLink.ActiveRecord;
try
DataLink.ActiveRecord := GridCoord.Y - FixedRows;
Hint := DataLink.Fields[GridCoord.X-FixedCols].AsString;
finally
DataLink.ActiveRecord := OldActiveRecord;
end;
OldRowIndex := GridCoord.Y;
OldColIndex := GridCoord.X;
end;
end
else
Application.CancelHint;
end;
end;
--
Regards, LVT.
ЗЫ Кстати, никто не научит, как можно искать что-то в здешнем архиве. Можно на почту.
Евгений Р. (2006-03-14 12:52:00) [2]Спасибо!
Кашперук Иван (2006-03-14 11:40:00) [3]Это для StringGrid, но думаю там все станет понятно
http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988624705&n=16