[英]resize button controls on windows form to fixed size as per screen resolution
我有一個特殊的要求,即在不同屏幕分辨率下,表單上的-in按鈕大小應保持特定大小。
如上圖所示,我有一個按鈕“ ON”和“ OFF”,對於特定分辨率,兩個按鈕的大小均為2 cms。
現在,我需要將不同尺寸的按鈕調整為2厘米的代碼,或者即使在不同分辨率下,按鈕的尺寸也應保持不變。
謝謝
這個問題似乎是“如何使Windows窗體分辨率獨立?”。 順便說一句,互聯網上有很多示例可以使您的表單解析獨立。 不幸的是,.Net沒有提供任何類型的功能來使您的應用程序對所有分辨率通用。 但是,沒有一種正確的方法。
我已經為此發布了邏輯。 您可以檢查一下。
您只需要將該代碼添加到Windows窗體中即可。
修改https://stackoverflow.com/a/4767664/3745022,我們可以獲得:
private int CentimeterToPixel(double Centimeter)
{
double pixel = -1;
using (Graphics g = this.CreateGraphics())
{
pixel = Centimeter * g.DpiY / 2.54d;
}
return (int)pixel;
}
// ...
button.Width = CentimeterToPixel(2);
幾點:
不知道Winforms,但是可以使用CSS處理:
@media (min-width: 221px) {
#button1 {
width: 200px;
height: 200px;
}
}
@media (min-width: 280px) {
#button1 {
width: 240px;
height: 240px;
}
}
對不同的屏幕尺寸和button2重復此操作。 可以比我定義的屏幕更大或更小。
或者可以使用jQuery處理:
jQuery(document).ready(function ($) {
window.onresize = function () {
if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
$("#button1").width(($(window).width()) / (3));
$("#button1").height(($(window).height()) / (3));
$("#button2").width(($(window).width()) / (3));
$("#button2").height(($(window).height()) / (3));
}
else {
$("#button1").width(($(window).width()) / (1.5));
$("#button1").height(($(window).height()) / (1.5));
$("#button2").width(($(window).width()) / (1.5));
$("#button2").height(($(window).height()) / (1.5));
}
});
反正就是這樣 包括手機內容,以防您尋找...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.