Metode IOleInPlaceObject::SetObjectRects (oleidl.h)

Menentukan berapa banyak objek di tempat yang akan terlihat.

Sintaks

HRESULT SetObjectRects(
  [in] LPCRECT lprcPosRect,
  [in] LPCRECT lprcClipRect
);

Parameter

[in] lprcPosRect

Penunjuk ke struktur RECT yang berisi posisi objek di tempat menggunakan koordinat klien dari jendela induknya.

[in] lprcClipRect

Penunjuk ke persegi panjang luar yang berisi persegi panjang posisi objek di tempat (lprcPosRect). Persegi panjang ini relatif terhadap area klien jendela induk objek.

Nilai kembali

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

Menampilkan kode Deskripsi
E_INVALIDARG
Penunjuk yang ditentukan tidak valid.
E_OUTOFMEMORY
Tidak tersedia cukup memori untuk operasi ini.
E_UNEXPECTED
Terjadi kesalahan tidak terduga.

Keterangan

Dimungkinkan bagi lprcClipRect untuk berubah tanpa lprcPosRect berubah.

Ukuran persegi panjang objek di tempat selalu dihitung dalam piksel. Ini berbeda dari visualisasi objek OLE lainnya, yang ada di HIMETRIC.

Catatan Saat menjalankan IOleInPlaceObject::SetObjectRects, jangan melakukan panggilan ke fungsi PeekMessage atau GetMessage , atau kotak dialog. Melakukannya dapat menyebabkan kebuntuan sistem. Ada pembatasan lebih lanjut tentang metode dan fungsi antarmuka OLE mana yang dapat dipanggil dari dalam IOleInPlaceObject::SetObjectRects.
 

Catatan untuk Penelepon

Kontainer harus memanggil IOleInPlaceObject::SetObjectRects setiap kali posisi jendela objek di tempat dan/atau bagian yang terlihat dari objek di tempat berubah.

Catatan untuk Pelaksana

Objek harus mengukur jendela di tempatnya agar sesuai dengan persimpangan lprcPosRect dan lprcClipRect. Objek juga harus menggambar isinya ke jendela objek di tempat sehingga kliping yang tepat terjadi.

Objek harus membandingkan lebar dan tingginya dengan yang disediakan oleh kontainernya (disampaikan melalui lprcPosRect). Jika perbandingan tidak menghasilkan kecocokan, kontainer menerapkan penskalaan ke objek. Objek kemudian harus memutuskan apakah objek harus melanjutkan pengeditan di tempat dalam mode skala/zoom atau menonaktifkan.

Persyaratan

Persyaratan Nilai
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

GetMessage

IOleInPlaceObject

IOleInPlaceSite::OnPosRectChange

PeekMessage