Форум: "Основная";
Текущий архив: 2006.07.30;
Скачать: [xml.tar.bz2];
ВнизStringGrid и Hint Найти похожие ветки
← →
def_ (2006-06-15 11:57) [0]Доброго дня. Такая проблема - нужно решить задачу показывания отдельной подсказки для каждой ячейки StringGrid/ В сети нашел такой код :
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
procedure StringGrid1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
procedure FormCreate(Sender: TObject);
private
{Private declarations}
Col : integer;
Row : integer;
public
{Public declarations}
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.Hint := "0 0";
StringGrid1.ShowHint := True;
end;
procedure TForm1.StringGrid1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
var
r : integer;
c : integer;
begin
StringGrid1.MouseToCell(X, Y, C, R);
with StringGrid1 do
begin
if ((Row <> r) or(Col <> c)) then
begin
Row := r;
Col := c;
Application.CancelHint;
StringGrid1.Hint :=IntToStr(r)+#32+IntToStr(c);
end;
end;
end;
Пример довльно распространненый и есть на многих крупных порталах, т.т.е должен быть правильным. Но не работает. В чем может быть причина. Пробывал в delphi7 и 8.
← →
evvcom © (2006-06-15 13:17) [1]Сравни с моим:
procedure DoShowHint(Control: TControl);
var
l_P: TPoint;
l_Message: TWMMouse;
begin
Application.CancelHint;
if Control.Hint <> "" then
begin
GetCursorPos(l_P);
l_Message.Pos := PointToSmallPoint(Control.ScreenToClient(l_P));
Application.HintMouseMessage(Control, TMessage(l_Message));
end;
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.07.30;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.012 c