Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2010, 19:15   #1
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию Широкоэкранный монитор.

Тренируюсь работать в полноэкранных приложениях - делаю морской бой. Хочу сделать форму на весь экран, дабы никто меня не "прикрывал". Выставил border в none, проставил размер формы в 1024*768, стиль выставил в StayOnTop и приготовился было следующим шагом переключить разрешение экрана по размеру формы, как вдруг вспомнил, что на ноуте (на котором идет разработка) широкоэкранный дисплей. Таким образом пиксели скорее всего станут "растянутыми" (хотя не проверял, но думаю, что так). Как поступить в случае, если я хочу учесть возможность использования программы на широкоэкранном мониторе?

UPD ----------------

Попробовал принудительно выставить "обычное" разрешения у широкоэкранки - жить можно, но смазано по-жесткому.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ

Последний раз редактировалось Alex Cones; 27.03.2010 в 19:45.
Alex Cones вне форума Ответить с цитированием
Старый 27.03.2010, 19:50   #2
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Цитата:
Как поступить в случае, если я хочу учесть возможность использования программы на широкоэкранном мониторе?
Думаю тебе нужно будет перестраивать графику своей игры для "обычного" и широкоэкранного мониторов отдельно. К примеру, сделать переключение в настройках или автоматом ... Потому как ведь в широком формате при одинаковой диагонали ты теряешь в высоте, но выигрываешь в ширине (я про пиксели).
ИМХО.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 27.03.2010, 19:53   #3
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Картинка не должна растягиваться под размер экрана: она должна иметь такое же соотношение длинны и ширины.Например в моей игре есть разделение разрешений. Т.е. для 16:9 разрешения 640x400 и 1440X900. Для 4:3 есть 640X480 и 1280X960. Тут важно чтобы рисуемое изображение (я говорю не об отдельных спрайтах а о выводимом буфере) по разрешению было соответствующем экрану.
В случае же если надо без искажений рисовать на разрешении не соответствующем пропорции монитора при рисовании нужно использовать различные множители размера, которые выравнивают картинку или обрезать ее по бокам. Тут нужно опытным путем разбираться.
Вадим Буренков вне форума Ответить с цитированием
Старый 27.03.2010, 20:05   #4
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Т.е. мне придется придумывать несколько вариантов компоновки для разных типов мониторов?

Тогда другой вопрос: Как определить тип экрана? Широкий, неширокий?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 27.03.2010, 20:07   #5
notHaker
Форумчанин
 
Аватар для notHaker
 
Регистрация: 01.12.2009
Сообщений: 569
По умолчанию

Screen.Widht / Screen.Height

1) 4 : 3 не широкий
2) 16 : 9 широкий
Код - это работа, а работа стоит денег.

pz-game.ru. 2d зомби-сурвивал для олдфагов.
notHaker вне форума Ответить с цитированием
Старый 27.03.2010, 20:23   #6
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...для любителя минимизации тогда уж:
Код:
GetSystemMetrics(SM_CXSCREEN) // ширина
GetSystemMetrics(SM_CYSCREEN) // высота
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 27.03.2010, 20:24   #7
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Alex Cones, ты только глянь чё твориться !!! Про соотношение сторон дисплея ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 27.03.2010, 20:27   #8
Вадим Буренков
Участник клуба
 
Аватар для Вадим Буренков
 
Регистрация: 06.03.2009
Сообщений: 1,346
По умолчанию

Если посмотреть то видно что при делении ширины на высоту у 4:3 разрешений получается примерно 1.3333333... (640/480=1.333333;1024/768=1.333333333), а у 16:9 получается примерно 1.6... (1440/900=1.6;640/400=1.6)

Последний раз редактировалось Вадим Буренков; 28.03.2010 в 19:42.
Вадим Буренков вне форума Ответить с цитированием
Старый 27.03.2010, 20:29   #9
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Цитата:
Alex Cones, ты только глянь чё твориться !!! Про соотношение сторон дисплея ...
Ох ё....

А мониторы существуют всех типов?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 27.03.2010, 20:39   #10
notHaker
Форумчанин
 
Аватар для notHaker
 
Регистрация: 01.12.2009
Сообщений: 569
По умолчанию

Думаю разумней будет держаться соотношения 4:3 или 5:4, а остальное заполнять чёрным фоном. Ну выже не экшен - блокбастер пишите)))))
Код - это работа, а работа стоит денег.

pz-game.ru. 2d зомби-сурвивал для олдфагов.
notHaker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мигает монитор Jantar Операционные системы общие вопросы 24 05.01.2012 14:43
CS Монитор iGlass Работа с сетью в Delphi 10 14.06.2010 16:29
Не включается монитор! Keien Компьютерное железо 13 26.02.2010 11:12
Монитор BELINEA Snickers Компьютерное железо 0 09.12.2008 02:54
LAN монитор Denager Работа с сетью в Delphi 15 03.12.2008 15:47