Selamün Aleyküm;
Qt'da (QML) şu özellik var: http://doc.qt.io/qt-5/qml-qtquick-window-screen.html#pixelDensity
Tanımında şöyle diyor:
Alıntı:
The number of physical pixels per millimeter.
Benim yapmak istediğim şey ise farklı boyutlarda ve çözünürlüklerde olan ekran çözünürlüklerine göre button, image, textbox vs. ve diğer tüm nesneleri cihazın boyutuna göre belirlemek istiyorum.
Mesela QML'de şöyle dediğimde:
Rectangle {
width: 300
height: 300
color: 'red'
}
Bu kod 300x300 boyutunda basit kırmızı bir kare ekranda gösteriyor. Lakin bu farklı ekranlarda farklı gözüküyor. Mesela bu kutulardan Grid şeklinde birden fazla olduğu zaman 1366x768 ekranda şöyle gözüküyor (resimleri elimle çizdim, sadece örnek):
https://s9.postimg.org/v95mw7v1r/image.png
Başka bir cihazda şöyle gözüküyor:
https://s9.postimg.org/3lsxi4x0f/image.png
Fakat görüldüğü gibi gerek boyut olarak gerek de ekranın dışına taşma olarak ortaya çıkan sorunlar oluyor.
Android native tarafında DIP ve DP ile sorunları aşabiliyoruz ama Qt'da Screen.pixelDensity ile DP hesaplanabiliyormuş. DP hesabı için şöyle bir formül var: x * (screenDpi / 160), fakat burada ekranın DPI'si isteniyor ve 160 diye sabit bir değer var. Bu Screen.pixelDensity özelliği ile bu işlemleri nasıl yapabilirim? Ya da başka bir çözümü var mı?
Teşekkürler.
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]