Вопрос:
Как создать отдельную подсказку (hint) для каждой ячейки StringGrid?

Ответ:

В приведенном примере
отслеживается движение курсора мыши – при перемещении между ячейками StringGrid’а
- появляется окно подсказки(hint), показываеющее номер текущей строки и колонки.

Пример:
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;

Tags: , , , , , ,

Дата создания: Воскресенье, июня 8, 2008 - 20:11 и находится в категории Delphi FAQ. Вы можете отслеживать ответы через RSS 2.0. Вы можете ответить.

Ответить

Вы должны быть в системе для комментирования.