سؤال

هل هناك طريقة لتغيير دقة الشاشة برمجيًا أو تمكين/تعطيل شاشات متعددة في Windows XP؟ على سبيل المثال للتغيير من 1024 × 768 مع شاشة واحدة إلى 1280x104 على شاشتين؟ سأكون أكثر اهتمامًا بوظيفة Win32 للقيام بذلك ، لكن أي شيء يمكن ربطه باختصار Windows يكفي.

هل كانت مفيدة؟

المحلول

يمكنك استخدام EnumdisplayDevices لمعرفة العروض التي تتوفرها و enumdisplaysettings للحصول على قائمة بالقرارات المتاحة لشاشاتك. يستخدم غيرت splaysettings لتعيين القرار الذي تحتاجه.

نصائح أخرى

نعم ، ولكن ليس جزءًا من .NET. ستحتاج إلى استخدام أو استدعاء أو كتابة غلاف للوصول إلى واجهة برمجة تطبيقات Win32.

نرى غيرت splaysettings والوظيفة ذات الصلة.

هنا يمكنك العثور على مثال أساسي.

يمكنك بسهولة السيناريو هذا مع http://www.autohotkey.com

إليك برنامج نصي للتبديل بين شاشة واحدة وشاشتين مع Windows+1 و Windows+2

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn  ; Recommended for catching common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#1::
Send {LWin}
WinWaitActive Start menu
Send Adjust Screen Resolution
Send {enter}
WinWaitActive Screen Resolution
ControlClick ComboBox3
Send {PgDn}
Send {Up} ; Select "Show desktop only on 1"
Send {enter}
Sleep 3000 ; workaround - cannot select accept/revert window?
Send {left}
Send {enter} ; accept changes
Return
#2::
Send {LWin}
WinWaitActive Start menu
Send Adjust Screen Resolution
Send {enter}
WinWaitActive Screen Resolution
ControlClick ComboBox3
Send {PgDn}
Send {Up}
Send {Up} ; Select "Extend these displays"
Send {enter}
Sleep 3000 ; workaround - cannot select accept/revert window?
Send {left}
Send {enter} ; accept changes
Return

اقرأ الرابط المعطى إنه سهل.

فقط قم بتنزيل DLL The Good To Go ..

mytactics.blogspot.in

Screen Srn=Screen.PrimaryScreen;

int tempWidth=Srn.Bounds.Width;
int tempHeight=Srn.Bounds.Height;
Console.WriteLine("Current Screen width is {0} and height is {1}.",
                   tempWidth,
                   tempHeight);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top