Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengoptimumkan Penskalaan Kawalan WinForms untuk Pelarasan Auto dalam Persekitaran DPI Tinggi?
Penskalaan kawalan WinForms: untuk pelarasan automatik optimum dalam persekitaran DPI tinggi
Walaupun secara umumnya dipercayai bahawa WinForms mempunyai keupayaan autoscaling yang terhad dalam persekitaran DPI yang tinggi, sebenarnya, .NET 2.0 dan kemudiannya telah meningkatkan dengan ketara keupayaan autoscalingnya. Walau bagaimanapun, untuk memanfaatkan sepenuhnya penambahbaikan ini, pembangun mesti mengikut garis panduan reka bentuk tertentu.
Kawalan yang tidak menyokong penskalaan automatik
Sesetengah kawalan mempunyai had dalam penskalaan:
AutoSize
dilumpuhkan dan fon ialah fon yang diwarisi, tetapkan atribut Font
secara eksplisit untuk mengelakkan ralat penskalaan. ScaleControl
borang untuk mengendalikan pelarasan lebar lajur. Panel1MinSize
, Panel2MinSize
dan SplitterDistance
. MultiLine
didayakan dan fon ialah fon yang diwarisi, tetapkan atribut Font
secara eksplisit. CreateGraphics.DpiX
berdasarkan .DpiY
dan ToolStrip.ImageScalingSize
. SizeMode
ditetapkan kepada Zoom
atau StretchImage
. CreateGraphics.DpiX
berdasarkan .DpiY
dan ImageList.ImageSize
. Garis Panduan Reka Bentuk
1. Kawalan bekas
AutoScaleMode
semua kawalan kontena kepada Font
. AutoScaleDimensions
kepada new System.Drawing.SizeF(6F, 13F)
(laraskan jika perlu). 2. Konfigurasi pereka
AutoSize
kawalan kontena didayakan. 3. Pengurusan fon
Font
hanya pada tahap kawalan daun atau dalam pembina bentuk asas (untuk lalai seluruh aplikasi). Font
dalam bentuk asas akan mengira semula AutoScaleDimensions
; 4. Berlabuh dan berlabuh
Dock
bukannya Anchor Right
atau Bottom
. 5. Kawalan ditambah secara dinamik
AutoScaleDimensions
dan AutoScaleMode
, kemudian sambung semula reka letak. 6. Kelas asas dan AutoSkala
AutoScaleMode
ditetapkan kepada Inherit
. Menetapkannya kepada sebarang nilai lain mungkin melumpuhkan penskalaan automatik. 7. Had saiz tetingkap
MaxSize
statik. Tetapkan OnLoad
dan MinSize
kepada dimensi berskala dalam acara pembina atau MaxSize
. Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengoptimumkan Penskalaan Kawalan WinForms untuk Pelarasan Auto dalam Persekitaran DPI Tinggi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!