Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
1-41672
Islander
2003-10-24 09:52
2003.11.13
Как узнать текущую кодовую страницу винды и текущую локаль?


1-41417
denis24
2003-10-29 15:36
2003.11.13
спикер


1-41267
Пубертанец
2003-10-31 15:26
2003.11.13
Запись в файл


4-42307
sIm-sIm
2003-09-02 16:36
2003.11.13
как можно отследить запущено приложение или нет....?


3-40828
Miwa
2003-10-22 05:45
2003.11.13
С чего начать или Какую СУБД/технологию/литературу посоветуете?




   Наверх