Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 14 su 14
  1. #11
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    Originariamente inviato da alka
    Se hai una licenza commerciale del componente DevExpress, puoi anche avvalerti direttamente del forum di supporto tecnico ufficiale per un aiuto mirato, dato che si tratta di un componente di terze parti.
    si, certo! il componente e' della devexpress ed io ne posseggo una licenza commerciale, ma come mettere dei valori nella clipboard non dipende da quel componente con cui seleziono i files.

    inoltre con quel componente ho la possibilita di utilizzare il menu contestuale di windows e quindi già in automatico ottenere tutte le varie funzioni come ad esempio il taglia e copia.

    il problema e' che io devo personalizzare quel menu, il cliente vuole personalizzare cio che i vari utenti possono fare tramite menu: ad alcuni NON vuole far fare il taglia e incolla ad altri si...etc etc

    comunque certamente scriverò.

    tornando al problema iniziale credo che il tutto vada risolto con un qualcosa del genere
    codice:
     SetClipboardData(CF_HDROP, ??????);
    che indicherebbe il MOVE o il Copy dei file/cartelle selezionati/e.

    grazie

  2. #12
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    ciao,

    ho scritto alla devexpress, riguardo il problema che mi nasceva sul loro componente riguardo la funzione del cut/copy, e purtroppo mi hanno risposto come temevo... rimandandomi all'help di windows.
    >>
    use my popup menu to open, Cut, Copy and paste file from clipboard.
    <<
    It seems that this behavior is not directly related to our controls. We use the standard system interface in our PopupMenu for Copy/Cut/Paste operations.
    Please review the following web page for additional information:
    http://msdn.microsoft.com/en-us/libr...RREDDROPEFFECT
    purtroppo e almeno per il momento ancora non sono riuscito a trovare la soluzione. se qualcuno ha un suggerimento sarebbe ben accetto.
    in caso contrario, se riuscissi a risolvere, certamente posterò.

    grazie

  3. #13
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    ecco la soluzione:

    codice:
    procedure TForm1.CopyFilesToClipboard(FileList: string);
    var
      DropFiles: PDropFiles;
      hGlobal: THandle;
      iLen: Integer;
      ADropEffectFormat: Cardinal;
      ADropEffect: PCardinal;
    begin
      iLen := Length(FileList) + 2;
      FileList := FileList + #0#0;
      OpenClipboard(0);
      hGlobal := GlobalAlloc(GMEM_SHARE or GMEM_MOVEABLE or GMEM_ZEROINIT, SizeOf(TDropFiles) + iLen);
      if (hGlobal = 0) then raise Exception.Create('Could not allocate memory.');
      begin
        DropFiles := GlobalLock(hGlobal);
        DropFiles^.pFiles := SizeOf(TDropFiles);
        Move(FileList[1], (PChar(DropFiles) + SizeOf(TDropFiles))^, iLen);
        SetClipboardData(CF_HDROP, hGlobal);
        GlobalUnlock(hGlobal);
      end;
    
      ADropEffectFormat := RegisterClipboardFormat(CFSTR_PREFERREDDROPEFFECT); // CFSTR_PREFERREDDROPEFFECT = 'Preferred DropEffect'
      hGlobal := GlobalAlloc(GMEM_SHARE or GMEM_MOVEABLE or GMEM_ZEROINIT, sizeof(dword));
      ADropEffect := GlobalLock(hGlobal);
      ADropEffect^ := 2; // 2 if cut or 1 if copy
      SetClipboardData(ADropEffectFormat, hGlobal);
      GlobalUnlock(hGlobal);
      CloseClipboard;
    end;
    ciao

  4. #14
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,487
    Originariamente inviato da 123delphi321
    ecco la soluzione [...]
    Gli utenti che si troveranno ad affrontare lo stesso problema in futuro te ne saranno senz'altro eternamente grati.

    Ottimo lavoro e a buon rendere.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.