C# tan anlayanlar çok acil bakarmısınız
3
●132
- 21-10-2024, 20:33:20Merhabalar ben bir barkod yazılımı geliştirdim ve bitirdim program'ı 1920x1080 pc de yaptım winform uygulaması program otomatik maximized başlıyor fakat mesela 1600x900 bir ekranda çalıştırmam lazım ekran'a büyük geliyor büyütmesine rağmen. Ekranın sağındaki butonlar v.s ekranın dışına taşıyor bunları her ekrana otomatik şekilde boyulanıcak şekilde nasıl ayarlarım? Yani 1920x1080 bir ekranda çalışan program 1320 ekranda da görünüm olarak aynı dursun tam ekran yapınca. Butonlar textboxlar v.s büyük kalmasın istiyorum lütfen çok acil yardımcı olurmusunuz
- 21-10-2024, 20:39:59Bu yardımcı olacaktır :
this.AutoScaleMode = AutoScaleMode.Dpi;
Eğer işe yaramazsa aşağıdaki kodu uygulayabilirsin :
private void Form1_Load(object sender, EventArgs e) { // Ekranın çözünürlüğünü al int screenWidth = Screen.PrimaryScreen.Bounds.Width; int screenHeight = Screen.PrimaryScreen.Bounds.Height; // Orijinal çözünürlüğe göre ölçek faktörünü hesapla float widthRatio = (float)screenWidth / 1920; float heightRatio = (float)screenHeight / 1080; // Tüm kontrolleri ölçekle foreach (Control control in this.Controls) { control.Width = (int)(control.Width * widthRatio); control.Height = (int)(control.Height * heightRatio); control.Left = (int)(control.Left * widthRatio); control.Top = (int)(control.Top * heightRatio); // Eğer kontrolün fontu varsa, onu da ölçekle control.Font = new Font(control.Font.FontFamily, control.Font.Size * Math.Min(widthRatio, heightRatio), control.Font.Style); } } - 21-10-2024, 20:51:59Hocam çooooook teşekkür ederim aslında sorunu çözdüm konuyu düzenlemeey gelmiştim birazcık aşağı almam gerekiyordu ama sizin kod daha iyi şekilde oturmasına yardımcı oldu çok sağolun R10+ verdimCptSLap adlı üyeden alıntı: mesajı görüntüle