如何做出IE收藏夹似的 TreeView ,就是有光标在 TreeNode 上时,(30分)

  • 主题发起人 主题发起人 QSmile
  • 开始时间 开始时间
Q

QSmile

Unregistered / Unconfirmed
GUEST, unregistred user!
如何做出IE收藏夹似的 TreeView ,就是有光标在 TreeNode 上时,
就立即有提示出来。
给点提示也可以
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls;

type
TForm1 = class(TForm)
TreeView1: TTreeView;
procedure TreeView1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
hw:THintWindow;

implementation

{$R *.DFM}

procedure TForm1.TreeView1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
AnItem: TTreeNode;

i:integer;
po: TPoint;
p :Pointer;
rect :TRect;
begin

AnItem := TreeView1.GetNodeAt(X, Y);
if (AnItem <> nil) then
begin
//caption := AnItem.Text;

po := ClientToScreen(Point(X, Y));
po.x := TreeView1.Left+po.x;
po.y := TreeView1.Top+po.y;

rect := hw.CalcHintRect(po.x+200,TreeView1.hint,p);
rect.Left := po.x+10;
rect.Right := po.x+length(AnItem.Text) * TreeView1.Font.Size + 20;
rect.Top := po.y;
rect.Bottom := po.y + 15;
hw.Color := clInfoBk;
hw.ActivateHint(rect,AnItem.Text);

end;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
hw := THintWindow.Create(self);
end;

end.
 
to zw84611
我马上支试一下如果可以就给你分。
Thanks !
 
to zw84611
基本上可以了但还有一点:
就是我想我用指到空白时 Hint 消失。
能不能再给我试一试
 
接受答案了.
 
后退
顶部