Comment puis-je afficher un aperçu (presque comme un indice) d'une image lorsque je passe la souris sur un élément d'une liste de noms de fichiers? J'ai essayé d'afficher un formulaire et de charger l'image, mais lorsque le formulaire d'aperçu s'affiche, je perds le focus pour la liste, ce qui signifie que lorsque je bouge la souris, l'image d'aperçu ne change pas lorsque je passe à l'élément suivant .Aperçu d'une image dans une liste
Merci, Pieter.
J'ai, en fonction de la réponse de TOndrej, a essayé de mettre en œuvre un THintWindow personnalisé, mais le Canvas.StretchDraw ne tire pas le bitmap envoyé en tant que paramètre. Des idées pourquoi pas? Le texte est affiché normalement.
procedure TFormMain.DisplayPreview(HintImage: TBitmap);
var
CustomHint: THintWindow;
Rect: TRect;
MousePoint: TPoint;
begin
*{
Based on Source: http://www.chami.com/tips/delphi/112996D.html
}*
GetCursorPos(MousePoint);
with Rect do
begin
// set the position and size of the hint window
Left := MousePoint.X;
Top := MousePoint.Y;
Right := Left + 50;
Bottom := Top + 25;
end;
CustomHint := THintWindow.Create(Self);
try
with CustomHint do
begin
// set the background color
//Color := clNone;
**Canvas.StretchDraw(Rect, HintImage);**
ActivateHint(Rect, 'Hint');
Application.ProcessMessages;
//
// perform your tasks here
// before closing the hint window
//
Sleep(500);
ReleaseHandle;
end;
finally
if Assigned(CustomHint) then
CustomHint.Free;
end;
end;