Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.205.56.209] |
|
Сообщ.
#1
,
|
|
|
В общем, нужно узнать какая ориентация экрана стоит в КПК - горизонтальная или вертикальная и изменить на вертикальную если нужно.
И нужно узнать какое разрешение у экрана - 320*240 или 640*480 Как? |
Сообщ.
#2
,
|
|
|
Я всегда буду проблемы самостоятельно решать... =)
SystemSettings.ScreenOrientation= ScreenOrientation.Angle0; //Повернуть экран в обычное положение scwidth=Screen.PrimaryScreen.WorkingArea.Width; scheight = Screen.PrimaryScreen.WorkingArea.Height; //узнать ширину и высоту рабочей области экрана (видимо, без меню внизу) |
Сообщ.
#3
,
|
|
|
ога, есть еще ClientSize.Width и ClientSize.Height.
походу тоже размеры рабочей области, а не разрешение Screen.PrimaryScreen.Bounds.Width и Height - не знаю, еще не проверял. есть шанс что таки разрешение экрана а не размеры формы. upd! да, это оно. полное разрешение зверька. а поворот экрана: SystemSettings.ScreenOrientation = ScreenOrientation.Angle90; |
Сообщ.
#4
,
|
|
|
Подниму тему. Есть коммуникатор, с разрешением 800*480.
Как правильно засетапить проект? Я делаю форму с таким разрешением (она вылезает огромной, ну и правильно - 72dpi всего) Потом разворачиваю ставлю на форму кнопку - сообразно ее размерам и так, как она должна выглядеть на экране. Делаю deploy на устройство с нужным мне разрешением - но результат выглядит как-то странно. Кнопка явно больше на экране, чем должна была бы быть. такое впечатление, что разрещение в эмуляторе на самом деле меньше. Как сделать правильно? Добавлено Провел эксперимент - похоже неважно - какой размер задавать форме? Бред какой-то. У меня стоит сейчас 238;267 - но при запуске на устройстве - кнопка не выглядит маленькой. Эмулятор что - экстраполирует форму до нужных размеров? Не понимаю... |
Сообщ.
#5
,
|
|
|
Я перефразирую - размер формы (в пикселях) не влияет и не имеет отношения к разрешению экрана целевого устройства?
|
Сообщ.
#6
,
|
|
|
Цитата Monochrome @ Я перефразирую - размер формы (в пикселях) не влияет и не имеет отношения к разрешению экрана целевого устройства? я, конечно, вовремя, но все же позволю мысль вслух. вообще, у формы есть параметр, вроде AutoScaleMode=Dpi, что значит, что экран будет всегда масштабироваться сам в зависимости от количества точек на дюйм. у больших экранов для уменьшения физических размеров увеличивается Dpi, и фреймворк делает масштабирование сам. |
Сообщ.
#7
,
|
|
|
Насколько я знаю, то SystemSettings.ScreenOrientation = ScreenOrientation.Angle0; меняет ориентацию экрана для КПК в целом. Есть ли возможность не менять ориентацию в WM, но приложение писать под горизонтальную ориентацию.
Просто проблема в следующем, да, запустилось приложение, сменило ориентацию SystemSettings.ScreenOrientation = ScreenOrientation.Angle90; но! Закрываю его (не корректным образом) и ориентация остается измененная (( Мне нужно горизонтальную ориентацию, неужели извращаться и писать "боком" приложение? И еще вопрос, как можно отследить и отменить нажатие таких кнопок как Меню, Вызов, Ок и т.п., которые как кнопки (физические) на самом КПК? |