Seret Tanggung Jawab Sumber
Sumber seret bertanggung jawab atas tugas-tugas berikut:
- Menyediakan objek transfer data untuk target drop yang mengeksposIDataObjectdan antarmukaIDropSource.
- Menghasilkan pointer dan umpan balik sumber.
- Menentukan kapan operasi seret telah dibatalkan atau operasi penghilangan telah terjadi.
- Melakukan tindakan apa pun pada data asli yang disebabkan oleh operasi penghilangan, seperti menghapus data atau membuat tautan ke data tersebut.
Tugas utamanya adalah membuat objek transfer data yang mengekspos IDataObject dan antarmuka IDropSource. Sumber seret mungkin atau mungkin tidak menyertakan salinan data yang dipilih. Termasuk itu tidak wajib, tetapi melakukannya membantu melindungi dari perubahan yang tidak disengaja dan memungkinkan kode operasi Clipboard identik dengan kode seret dan letakkan.
Saat operasi seret sedang berlangsung, sumber seret bertanggung jawab untuk mengatur penunjuk mouse dan, jika sesuai, untuk memberikan umpan balik sumber tambahan kepada pengguna. Sumber seret tidak dapat memberikan umpan balik apa pun yang melacak posisi mouse selain dengan benar-benar mengatur penunjuk nyata (lihat fungsi SetCursor). Aturan ini harus diberlakukan untuk menghindari konflik dengan umpan balik yang diberikan oleh target penurunan. (Sumber seret juga dapat menjadi target penghilangan. Ketika menjatuhkan dirinya sendiri, sumber/target dapat, tentu saja, memberikan umpan balik target untuk melacak posisi mouse. Namun, dalam hal ini, itu adalah target penurunan yang melacak mouse, bukan sumbernya.) Berdasarkan umpan balik yang ditawarkan oleh target penurunan, sumber menetapkan pointer yang sesuai.
Topik terkait