Bagikan melalui


Metode IDropTarget::D rop (oleidl.h)

Menggabungkan data sumber ke dalam jendela target, menghapus umpan balik target, dan merilis objek data.

Sintaks

HRESULT Drop(
  [in]      IDataObject *pDataObj,
  [in]      DWORD       grfKeyState,
  [in]      POINTL      pt,
  [in, out] DWORD       *pdwEffect
);

Parameter

[in] pDataObj

Penunjuk ke antarmuka IDataObject pada objek data yang ditransfer dalam operasi seret dan letakkan.

[in] grfKeyState

Status tombol pengubah papan ketik saat ini pada papan ketik. Nilai yang mungkin dapat berupa kombinasi dari salah satu bendera MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON, dan MK_RBUTTON.

[in] pt

Struktur POINTL yang berisi koordinat kursor saat ini dalam koordinat layar.

[in, out] pdwEffect

Pada input, arahkan ke nilai parameter pdwEffect dari fungsi DoDragDrop . Saat kembali, harus berisi salah satu bendera DROPEFFECT , yang menunjukkan hasil operasi penghilangan.

Menampilkan nilai

Metode ini mengembalikan S_OK pada keberhasilan. Nilai lain yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
E_UNEXPECTED
Terjadi kesalahan tidak terduga.
E_INVALIDARG
Parameter pdwEffect tidak valid.
E_OUTOFMEMORY
Tidak tersedia cukup memori untuk operasi ini.

Keterangan

Anda tidak memanggil metode ini secara langsung. Fungsi DoDragDrop memanggil metode ini ketika pengguna menyelesaikan operasi seret dan letakkan.

Dalam menerapkan Drop, Anda harus memasukkan objek data ke dalam target. Gunakan format yang tersedia di IDataObject, yang tersedia melalui pDataObj, bersama dengan status kunci pengubah saat ini untuk menentukan bagaimana data akan dimasukkan, seperti penautan atau penyematan.

Selain menggabungkan data, Anda juga harus membersihkan seperti yang Anda lakukan dalam metode IDropTarget::D ragLeave :

  • Hapus umpan balik target apa pun yang saat ini ditampilkan.
  • Merilis referensi apa pun ke objek data.
Anda juga meneruskan efek operasi ini kembali ke aplikasi sumber melalui DoDragDrop, sehingga aplikasi sumber dapat membersihkan setelah operasi seret dan letakkan selesai:
  • Hapus umpan balik sumber apa pun yang sedang ditampilkan.
  • Buat perubahan yang diperlukan pada data, seperti menghapus data jika operasi dipindahkan.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header oleidl.h

Lihat juga

DoDragDrop

IDropSource

IDropSourceNotify

IDropTarget

RegisterDragDrop

MencabutDragDrop