Menerapkan Aktivasi Di Tempat

Aktivasi di tempat memungkinkan pengguna berinteraksi dengan objek yang disematkan tanpa meninggalkan dokumen kontainer. Saat pengguna mengaktifkan objek, bilah menu komposit yang terdiri dari elemen dari bilah menu aplikasi kontainer dan aplikasi server menggantikan bilah menu utama kontainer. Perintah dan fitur dari kedua aplikasi dengan demikian tersedia untuk pengguna, termasuk bantuan sensitif konteks untuk objek aktif. Ketika pengguna mulai bekerja dengan beberapa bagian non-objek dari dokumen, objek dinonaktifkan, menyebabkan menu asli dokumen kontainer menggantikan menu komposit.

Kemampuan ini awalnya pergi dengan nama pengeditan di tempat. Nama diubah karena pengeditan hanya satu cara bagi pengguna untuk berinteraksi dengan objek yang sedang berjalan. Klip suara, misalnya, dapat didengarkan alih-alih mengedit. Klip video dapat dilihat alih-alih pengeditan. Aktivasi di tempat sangat apt dalam kasus klip video karena memungkinkan mereka untuk berjalan di tempat, tanpa memanggil jendela terpisah. Ini bisa sangat penting jika video akan dilihat, katakanlah, bersama dengan data teks yang berdekatan dalam dokumen kontainer.

Menerapkan aktivasi di tempat sangat opsional untuk aplikasi kontainer dan server. OLE masih mendukung model di mana mengaktifkan objek menyebabkan aplikasi server membuka jendela terpisah. Objek tertaut selalu terbuka di jendela terpisah untuk menekankan bahwa objek tersebut berada dalam dokumen terpisah.

Aktivasi di tempat dimulai dengan objek sebagai respons terhadap panggilan IOleObject::D oVerb dari kontainernya. Panggilan ini biasanya terjadi sebagai respons terhadap pengguna yang mengklik dua kali objek atau memilih perintah (kata kerja) dari menu Edit aplikasi kontainer.

Jendela di tempat menerima input keyboard dan mouse saat objek yang disematkan aktif. Saat pengguna memilih perintah dari bilah menu komposit, perintah dan pesan menu terkait dikirim ke kontainer atau aplikasi objek, tergantung pada menu drop-down tertentu yang dipilih. Input dengan cara penggaris, toolbar, atau hiasan bingkai objek langsung masuk ke objek yang disematkan, yang memiliki jendela ini.

Objek tersemat yang diaktifkan di tempat tetap aktif sampai kontainer menonaktifkannya sebagai respons terhadap input pengguna atau objek secara sukarela menyerahkan status aktif, seperti yang mungkin dilakukan klip video, misalnya. Pengguna dapat menonaktifkan objek dengan mengklik di dalam dokumen kontainer tetapi di luar jendela aktivasi di tempat objek, atau hanya dengan mengklik objek lain. Objek yang diaktifkan di tempat tetap aktif, namun, jika pengguna mengklik bilah judul kontainer, bilah gulir, atau, khususnya, bilah menu.

Anda dapat menerapkan server objek aktivasi di tempat baik sebagai server dalam proses (DLL) atau server lokal (EXE). Dalam kedua kasus, bilah menu komposit berisi item (biasanya menu drop-down) dari proses server dan kontainer. Dalam kasus server dalam proses, jendela aktivasi di tempat hanyalah jendela anak lain dalam hierarki jendela kontainer, menerima inputnya melalui pompa pesan aplikasi kontainer.

Dalam kasus server lokal, jendela aktivasi di tempat milik proses aplikasi server objek yang disematkan, tetapi jendela induknya milik kontainer. Input untuk jendela aktivasi di tempat muncul dalam antrean pesan server dan dikirim oleh perulangan pesan server. Pustaka OLE bertanggung jawab untuk melihatnya bahwa perintah menu dan pesan dikirim dengan benar.

Dokumen Gabungan