Tentang Clipboard

Clipboard adalah sekumpulan fungsi dan pesan yang memungkinkan aplikasi untuk mentransfer data. Karena semua aplikasi memiliki akses ke clipboard, data dapat dengan mudah ditransfer antar aplikasi atau dalam aplikasi.

Papan klip digerakkan oleh pengguna. Jendela harus mentransfer data ke atau dari clipboard hanya sebagai respons terhadap perintah dari pengguna. Jendela tidak boleh menggunakan clipboard untuk mentransfer data tanpa sepengetahuan pengguna.

Objek memori di clipboard dapat dalam format data apa pun, yang disebut format clipboard. Setiap format diidentifikasi oleh nilai bilangan bulat yang tidak ditandatangani. Untuk format clipboard standar (yang telah ditentukan sebelumnya), nilai ini adalah konstanta yang ditentukan dalam Winuser.h; untuk format clipboard terdaftar, ini adalah nilai kembali dari fungsi RegisterClipboardFormat.

Kecuali untuk mendaftarkan format clipboard, jendela individual melakukan sebagian besar operasi clipboard. Biasanya, prosedur jendela mentransfer informasi ke atau dari clipboard sebagai respons terhadap pesan WM_COMMAND.

Bagian ini membahas hal berikut:

Perintah Clipboard

Pengguna biasanya melakukan operasi clipboard dengan memilih perintah dari menu Edit aplikasi. Berikut ini adalah deskripsi singkat tentang perintah clipboard standar.

Perintah Deskripsi
Cut Menempatkan salinan pilihan saat ini pada papan klip dan menghapus pilihan dari dokumen. Konten papan klip sebelumnya dihancurkan.
Salinan Menempatkan salinan pilihan saat ini pada papan klip. Dokumen tetap tidak berubah. Konten papan klip sebelumnya dihancurkan.
Pasta Mengganti pilihan saat ini dengan isi papan klip. Isi papan klip tidak diubah.
Hapus Menghapus pilihan saat ini dari dokumen. Isi papan klip tidak diubah. Perintah ini tidak melibatkan clipboard, tetapi akan muncul dengan perintah clipboard pada menu Edit .

 

Nomor Urutan Clipboard

Clipboard untuk setiap stasiun jendela memiliki nomor urutan clipboard terkait. Angka ini dinaikkan setiap kali isi papan klip berubah. Untuk mendapatkan nomor urutan clipboard, panggil fungsi GetClipboardSequenceNumber.

Penampil Clipboard

Penampil papan klip adalah jendela yang menampilkan isi papan klip saat ini. Jendela penampil clipboard adalah kenyamanan bagi pengguna dan tidak memengaruhi fungsi transaksi data clipboard.

Biasanya, jendela penampil clipboard dapat menampilkan setidaknya tiga format yang paling umum: CF_TEXT, CF_BITMAP, dan CF_METAFILEPICT. Jika jendela tidak membuat data tersedia dalam salah satu dari ketiga format ini, jendela harus menyediakan data dalam format tampilan atau menggunakan format tampilan pemilik.

Rantai penampil clipboard adalah penautan bersama-sama dari dua entitas atau lebih sehingga mereka bergantung satu sama lain untuk operasi. Interdependensi (rantai) ini memungkinkan semua aplikasi penampil clipboard yang berjalan untuk menerima pesan yang dikirim ke clipboard saat ini.

Topik berikut dibahas di bagian ini.

Jendela Penampil Clipboard

Jendela menambahkan dirinya ke rantai penampil clipboard dengan memanggil fungsi SetClipboardViewer. Nilai yang dikembalikan adalah handel ke jendela berikutnya dalam rantai. Untuk mengambil handel ke jendela pertama dalam rantai, panggil fungsi GetClipboardViewer.

Setiap jendela penampil clipboard harus melacak jendela berikutnya di rantai penampil clipboard. Ketika konten clipboard berubah, sistem mengirim pesan WM_DRAWCLIPBOARD ke jendela pertama dalam rantai. Setelah memperbarui tampilannya, setiap jendela penampil clipboard harus meneruskan pesan ini ke jendela berikutnya dalam rantai.

Sebelum menutup, jendela penampil clipboard harus menghapus dirinya dari rantai penampil clipboard dengan memanggil fungsi ChangeClipboardChain. Sistem kemudian mengirim pesan WM_CHANGECBCHAIN ke jendela pertama dalam rantai.

Untuk informasi selengkapnya tentang memproses pesan WM_DRAWCLIPBOARD dan WM_CHANGECBCHAIN, lihat Membuat Jendela Penampil Clipboard.

Tampilkan Format

Format tampilan adalah format clipboard yang digunakan untuk menampilkan informasi di jendela penampil clipboard. Pemilik clipboard yang menggunakan format clipboard privat atau terdaftar, dan tidak ada format standar yang paling umum, harus menyediakan data dalam format tampilan untuk ditampilkan di jendela penampil clipboard. Format tampilan dimaksudkan hanya untuk ditampilkan dan tidak boleh ditempelkan ke dalam dokumen.

Empat format tampilan adalah: CF_DSPBITMAP, CF_DSPMETAFILEPICT, CF_DSPTEXT, dan CF_DSPENHMETAFILE. Format tampilan ini dirender dengan cara yang sama seperti format standar, yaitu: CF_BITMAP, CF_TEXT, CF_METAFILEPICT, dan CF_ENHMETAFILE.

Format Tampilan Pemilik

Untuk pemilik clipboard yang tidak menggunakan salah satu format clipboard standar umum, alternatif untuk menyediakan format tampilan adalah dengan menggunakan format clipboard tampilan pemilik (CF_OWNERDISPLAY).

Dengan menggunakan format tampilan pemilik, pemilik clipboard dapat menghindari overhead penyajian data dalam format tambahan dengan mengambil kontrol langsung atas pengecatan jendela penampil clipboard. Jendela penampil clipboard mengirim pesan ke pemilik clipboard setiap kali sebagian jendela harus dicat ulang atau ketika jendela digulir atau diubah ukurannya.

Format Papan Klip Standar