Beberapa Aplikasi Monitor pada Sistem yang Berbeda

Agar beberapa aplikasi monitoraware Anda berfungsi baik pada sistem dengan dan tanpa dukungan beberapa monitor, tautkan aplikasi Anda dengan Multimon.h. Anda juga harus menentukan COMPILE_MULTIMON_STUBS dalam satu file C. Jika sistem tidak mendukung beberapa monitor, ini mengembalikan nilai default dari GetSystemMetrics , dan beberapa fungsi monitor bertindak seolah-olah hanya ada satu tampilan. Pada beberapa sistem pemantauan, aplikasi Anda akan bekerja secara normal.

Karena koordinat negatif dapat terjadi dengan mudah dalam sistem multimonitor, Anda harus mengambil koordinat yang dikemas dalam lParam dengan menggunakan makro GET_X_LPARAM dan GET_Y_LPARAM .

Jangan gunakan koordinat atau koordinat negatif yang lebih besar dari SM_CXSCREEN dan SM_CYSCREEN untuk menyembunyikan jendela. Windows yang menggunakan batas ini untuk menyembunyikan mungkin muncul pada monitor lain. Demikian juga, jangan gunakan batas ini untuk menjaga jendela tetap terlihat karena ini dapat menyebabkan jendela diposisikan ke monitor utama. Yang terbaik adalah memeriksa kembali aplikasi yang ada untuk masalah ini. Namun, Anda dapat meminimalkan masalah dalam aplikasi yang ada dengan menjalankan aplikasi pada monitor utama atau dengan menyimpan monitor utama di sudut kiri atas layar virtual.

Perhatikan bahwa SM_CXMAXTRACK dan SM_CYMAXTRACK ditentukan untuk desktop, bukan hanya satu monitor. Windows yang menggunakan batas ini mungkin perlu didefinisikan ulang.

Jendela induk atau terkait mungkin tidak berada di monitor yang sama dengan jendela anak. Untuk menemukan monitor jendela, aplikasi harus menggunakan fungsi MonitorFromWindow .

Untuk memiliki tampilan pengaman layar di semua monitor, tautkan dengan versi terbaru Scrnsave.lib. Jika tidak, pengaman layar hanya dapat muncul di monitor utama dan membiarkan monitor lain tidak tersentuh. Pengaman layar yang ditautkan dengan Scrnsave.lib terbaru akan berfungsi pada sistem pemantauan tunggal dan ganda. Untuk memiliki pengaman layar yang berbeda di setiap monitor, gunakan beberapa fungsi monitor untuk menangani setiap monitor secara terpisah.

Perangkat input yang mengirimkan koordinat ke sistem dalam koordinat absolut, seperti tablet, memiliki input kursor yang dibatasi untuk monitor utama. Untuk beralih input tablet antar monitor, lihat instruksi dari OEM.

Untuk memetakan input mouse yang dikirim dalam koordinat absolut ke seluruh layar virtual, gunakan struktur INPUT dengan MOUSEEVENTF_ABSOLUTE dan MOUSEEVENTF_VIRTUALDESKTOP.

Fungsi BitBlt berfungsi dengan baik untuk beberapa sistem monitor. Namun, fungsi MaskBlt, PlgBlt, StretchBlt, dan TransparentBlt akan gagal jika konteks perangkat sumber dan tujuan berbeda.