Einzelnen Beitrag anzeigen

quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Drag & Drop: DragCursor mit Bitmap statt Standard-Cu

  Alt 14. Mär 2009, 00:12
Sicher, die muss es geben. Sind ja schließlich von TControl.
OnStartDrag und OnDragDrop sind bei mir in D7 vorhanden.

Hab noch schnell eine bessere Variante geschrieben:
Delphi-Quellcode:
type
  PSHFILEINFO = ^SHFILEINFO;
  SHFILEINFO = record
    hIcon : HICON;
    iIcon : Integer;
    dwAttributes : DWORD;
    szDisplayName : array[0..255] of PChar;
    szTypeName : array[0..79] of PChar;
  end;

const
  SHGFI_ICON = $100;
  SHGFI_SMALLICON = $1;

function SHGetFileInfo(pszPath : PChar; dwFileAttributes : DWORD; psfi : PSHFILEINFO; cbFileInfo : DWORD; uFlags : DWORD) : PDWORD; external 'shell32.dllname 'SHGetFileInfo';

procedure TForm1.ShellTreeView1StartDrag(Sender: TObject;
  var DragObject: TDragObject);
var
  lpPath : PChar;
  sfi : SHFILEINFO;
begin
  lpPath := PChar((Sender as TShellTreeView).Path);
  SHGetFileInfo(lpPath,
                0,
                @sfi,
                SizeOf(SHFILEINFO),
                SHGFI_ICON or SHGFI_SMALLICON);
  SetCursor(sfi.hIcon);
  DestroyIcon(sfi.hIcon);
end;
Sag mir bitte ob die bei dir geht
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
  Mit Zitat antworten Zitat