Einzelnen Beitrag anzeigen

Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: VirtualStringTree MouseMove die Column ermitteln

  Alt 29. Mär 2018, 16:16
Hallo Hobbycoder,

ich würde dafür das OnGetCursor Event verwenden. Das ist genau für so etwas gemacht. Anbei mal ein Beispiel wie ich das gemacht habe. Das solltest du ja auf dich umbauen können.

Delphi-Quellcode:
procedure TfrmMain.vstGetCursor(Sender: TBaseVirtualTree; var Cursor: TCursor);
var
  vst: TVirtualStringTree;
  NodeData: PAppointment;
  MousePos: TPoint;
begin
  vst := Sender as TVirtualStringTree;
  if (Assigned(vst.HotNode)) then begin
    NodeData := vst.GetNodeData(vst.HotNode);
    MousePos := Mouse.CursorPos;
    if (vst.Header.Columns.ColumnFromPosition(vst.ScreenToClient(MousePos)) = 4) and
      (NodeData^.LinkAvailable)
    then begin
      Cursor := crHandPoint
    end else
      Cursor := crDefault;
  end;
end;
  Mit Zitat antworten Zitat