Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Hint при Drag&Drop   Найти похожие ветки 

 
gilk ©   (2003-10-25 10:33) [0]

Как при Drag&Drop реализовать под курсором Hint


 
zapped ©   (2003-10-25 13:35) [1]

вот, у себя такое пользую:


type
TMyHint = class(THintWindow)
private
procedure WMNCHitTest(var Message: TWMNCHitTest); message WM_NCHITTEST;
end;
...
var
TH: TMyHint;
...
procedure TMainForm.FormCreate(Sender: TObject);
begin
TH := THintWindow.Create(Self);
...
end;
...
procedure TMainForm.PlaylistViewDragOver(Sender, Source: TObject; X,
Y: Integer; State: TDragState; var Accept: Boolean);
var
TempRect: TRect;
s: string;
...
begin
s := "Hint while drag`n`drop";
with TH do
begin
TempRect := CalcHintRect(Canvas.TextWidth(s), s, nil);
TempRect:=Bounds(Mouse.CursorPos.x, Mouse.CursorPos.y + 20, TempRect.Right, TempRect.Bottom);
if Visible then
begin
Hide;
ReleaseHandle;
end
else
ActivateHint(TempRect, s);
end;
...
end;
...

procedure TMyHint.WMNCHitTest(var Message: TWMNCHitTest);
begin
ReleaseHandle;
end;
...
procedure TMainForm.FormDestroy(Sender: TObject);
begin
TH.Free;
...
end;
...


 
zapped ©   (2003-10-25 13:38) [2]

впрочем, здесь
TempRect:=Bounds(Mouse.CursorPos.x, Mouse.CursorPos.y + 20, TempRect.Right, TempRect.Bottom);
лучше так
TempRect:=Bounds( X, Y + 20, TempRect.Right, TempRect.Bottom); // у меня просто в другом обработчике это используется, там приходится координаты мыши так брать



Страницы: 1 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
1-41220
Lamak
2003-10-30 16:23
2003.11.13
Languages


3-40856
Вованчик
2003-10-21 15:03
2003.11.13
Select


14-42079
qqq
2003-10-22 13:12
2003.11.13
TOEFL books


3-40810
NewD
2003-10-22 09:46
2003.11.13
Как подключиться через ADO к SQL SERVER на другой машине


4-42314
Алексей Петухов
2003-09-05 12:10
2003.11.13
Прозрачные окошки