2007. március 28., szerda
How to control the hint position
Problem/Question/Abstract:
How do I force hints to be shown where I want? The hint for a stringgrid currently is showing up right below it, where it doesn't get noticed if the user is moving his/ her mouse over the top of the grid and the grid is large. Ideally I'd want that little yellow boxed hint to show as close to the cursor as possible.
Answer:
procedure TArrangerForm.AppShowHint(var HintStr: string; var CanShow: Boolean;
var HintInfo: THintInfo);
var
i: integer;
begin
with HintInfo do
begin
if (HintControl = LocatorPanel1) then
with LocatorPanel1 do
begin
if not (csLButtonDown in ControlState) then
begin
i := FindListMarker(CursorPos.X);
if (i >= 0) then
begin
HintPos := ClientToScreen(Point(TimeToPixel(MarkerList.Markers[i].Offset) + 10, 2));
Application.HintPause := 0;
Application.HintHidePause := MaxInt;
CanShow := True;
exit;
end;
end;
CanShow := False;
end;
end;
Application.HintPause := 800;
Application.HintHidePause := 2500;
end;
Feliratkozás:
Megjegyzések küldése (Atom)
Nincsenek megjegyzések:
Megjegyzés küldése