Bagikan melalui


Antarmuka IDragSourceHelper (shobjidl_core.h)

Diekspos oleh Shell untuk memungkinkan aplikasi menentukan gambar yang akan ditampilkan selama operasi seret dan letakkan Shell.

Warisan

Antarmuka IDragSourceHelper mewarisi dari antarmuka IUnknown . IDragSourceHelper juga memiliki jenis anggota berikut:

Metode

Antarmuka IDragSourceHelper memiliki metode ini.

 
IDragSourceHelper::InitializeFromBitmap

Menginisialisasi pengelola gambar seret untuk kontrol tanpa jendela.
IDragSourceHelper::InitializeFromWindow

Menginisialisasi pengelola seret-gambar untuk kontrol dengan jendela.

Keterangan

Antarmuka ini diekspos oleh manajer gambar seret Shell. Ini tidak diimplementasikan oleh aplikasi.

Gunakan antarmuka ini untuk menentukan gambar yang ditampilkan selama operasi seret dan letakkan Shell. Antarmuka IDragSourceHelper, IDropTargetHelper, dan IInitializeWithWindow diekspos oleh objek pengelola gambar seret untuk memungkinkan antarmuka IDropTarget menggunakan gambar seret kustom. Untuk menggunakan salah satu antarmuka ini, Anda harus membuat objek pengelola gambar seret server dalam proses dengan memanggil CoCreateInstance dengan pengidentifikasi kelas (CLSID) CLSID_DragDropHelper. Dapatkan penunjuk antarmuka menggunakan prosedur Model Objek Komponen (COM) standar.

Antarmuka IDragSourceHelper menyediakan dua cara berikut untuk menentukan bitmap yang akan digunakan sebagai gambar seret.

  • Kontrol yang memiliki jendela dapat mendaftarkan pesan jendela DI_GETDRAGIMAGE untuknya dan menginisialisasi pengelola gambar seret dengan IDragSourceHelper::InitializeFromWindow. Saat pesan DI_GETDRAGIMAGE diterima, handler menempatkan informasi bitmap gambar seret dalam struktur SHDRAGIMAGE yang diteruskan sebagai nilai lParam pesan.
  • Kontrol tanpa jendela dapat menginisialisasi pengelola seret-gambar dengan IDragSourceHelper::InitializeFromBitmap. Metode ini memungkinkan aplikasi untuk hanya menentukan bitmap.
Catatan Objek pembantu seret dan letakkan memanggil IDataObject::SetData untuk memuat format privat—digunakan untuk dukungan lintas proses—ke dalam objek data. Ini kemudian mengambil format ini dengan memanggil IDataObject::GetData. Untuk mendukung objek pembantu seret dan letakkan, implementasi SetData dan GetData objek data harus dapat menerima dan mengembalikan format privat arbitrer.
 
Untuk diskusi lebih lanjut tentang operasi seret dan letakkan Shell, lihat Mentransfer Data Shell Menggunakan Seret dan Letakkan atau Clipboard.
Catatan Sebelum Windows Vista antarmuka ini dideklarasikan dalam Shlobj.h.
 

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional, Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header shobjidl_core.h (termasuk Shobjidl.h)