schon gut, habs selbst rausgefunden
ist vieleicht nicht optimal, aber funtkioniert einwandfrei...das hätten die Delphi Leutchen ruhig mal direkt mit implementieren können:
dafür benötigt man die
unit CommCtrl (nicht zu verwechseln mit ComCtrls, aus der TMonthCalendar stammt)
Delphi-Quellcode:
procedure TSchedMain.calendarDragDrop(Sender, Source: TObject; X,
Y: Integer);
var
inf: MCHITTESTINFO;
datestr: string;
begin
inf.pt.X := X;
inf.pt.Y := Y;
inf.cbSize := sizeOf(inf);
MonthCal_HitTest(calendar.Handle,inf);
datestr :=inttostr(inf.st.wYear)+'-'+inttostr(inf.st.wMonth)+'-'+inttostr(inf.st.wDay)+' '+inttostr(TListView(Source).selected.Index+9)+':00:00';
inf.pt ist halt vom typ TPoint und da sollten dann schon die Drop-Koordinaten rein
inf.st ist vom Typ _SYSTEMTIME, was wiederrum ein record mit der Zeitinfo darstellt
also wunderbar gelöst
hat auch lange genug gedauert
und für alle die es wissen wollen: hier die funktion aus der CommCtrl:
function MonthCal_HitTest(hmc: HWND; var info: TMCHitTestInfo): DWORD;