Главная страница
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.024 c
7-42197
iWorm
2003-08-27 03:54
2003.11.13
Клавиатура


1-41384
Zilog
2003-10-30 10:45
2003.11.13
Pascal 7.0 Есть указатель на некую функцию. Требуется запустить


6-41854
famous
2003-09-10 03:33
2003.11.13
поиск в web документе


14-42121
Ru
2003-10-22 15:02
2003.11.13
Есть ли жизнь на Марсе?


4-42331
Sesh
2003-08-31 23:20
2003.11.13
Управлени Explorer