Вниз
Скачать: CL | DM;

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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
3-1148881795
DelphiN!
2006-05-29 09:49
2006.07.30
Очень медненный Append в таблицу Firebird-a


2-1152703541
Anonymous55
2006-07-12 15:25
2006.07.30
constraints->minheight


2-1152693377
hgd
2006-07-12 12:36
2006.07.30
Polygon


15-1151468479
Dimmmonn
2006-06-28 08:21
2006.07.30
нужны сэмплы!


15-1151522536
Avgust
2006-06-28 23:22
2006.07.30
лицензия...




   Наверх