Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.22;
Скачать: CL | DM;

Вниз

Как подстроить свою прогу под расширение монитора пользователя   Найти похожие ветки 

 
maxim2 ©   (2002-07-09 13:05) [0]

Привет всем!
Например у меня расширение монитора 1024 на 768 а у пользователя 800 на 600 и когда он запускает прогу то она выходит за пределы экрана. Как бы сделать чтобы прога работала бы и под расширением 1024 и под 800


 
Dimich1978 ©   (2002-07-09 14:03) [1]

Либо определять размеры экрана и соответственно рассчитывать все компаненты, либо этого легко добится используя Panel.


 
Dimich1978 ©   (2002-07-09 14:16) [2]

А лучше бери и на время пока выполняется твоя прога поменяй разрешение экрана(из свей проги). Как это можно сделать смотри
http://www.symbol.ru/library/delphi_secrets/


 
Reindeer Moss Eater   (2002-07-09 14:25) [3]

const App_FontSize = 10;
var DC:HDC;
begin
try
DC:=GetDC(0);
ScreenLogPixels:=GetDeviceCaps(DC,LOGPIXELSY);
finally
ReleaseDC(0,DC);
end;
DefFontData.Height:= - MUlDiv(App_FontSize,ScreenLogPixels,72);
Font.Size:=DefFontData.Height;
end;


 
TTCustomDelphiMaster ©   (2002-07-09 15:53) [4]

Делай под 800x600, а уж на 1024 она как нибудь будет работать


 
Игорь Шевченко ©   (2002-07-09 16:00) [5]

Умные люди (Microsoft) рекомендуют разрабатывать программу для разрешения 640 x 480, тогда во всех остальных разрешениях она гарантировано будет работать.


 
grig   (2002-07-09 16:03) [6]

Используй свойства Allign, Anchors и Constraints у объектов в окне. И, конечно тестируй на разных разрешениях.
Успехов


 
[NIKEL] ©   (2002-07-09 16:09) [7]

Для определения текущего разрешения есть свойство Width & Height глобальной переменной Screen... Я например использую всегда ScaleBy для масштабирования под разные разрешения - главное подсчитать коэффициент масштабирования, деля разрешения экрана во время создания приложения на разрешение экрана во время запуска пиложения. Именно этот коэффициент и используется для свойства ScaleBy


 
TTCustomDelphiMaster ©   (2002-07-09 16:31) [8]

[NIKEL] © (09.07.02 16:09)
А если разрешение поменяется во время работы приложения?

maxim2 © (09.07.02 13:05)
делай как говорит grig (09.07.02 16:03) с учетом Игорь Шевченко © (09.07.02 16:00)
На твоей форме должен быть хотябы один компонент с Allign=allclient, и если твоя форма влезит в 640 то в других разрешениях она будет выглядеть более менее.

Игорь Шевченко © (09.07.02 16:00)
и 16 цветов радуги :)


 
Игорь Шевченко ©   (2002-07-09 16:35) [9]

TTCustomDelphiMaster © (09.07.02 16:31)


> и 16 цветов радуги :)


Было 16, теперь мин. требования 256 цветов.
Я рекомендую прочитать
http://msdn.microsoft.com/library/default.asp?URL=/library/partbook/winguide/welcome.htm




 
[NIKEL] ©   (2002-07-09 16:39) [10]

2 TTCustomDelphiMaster © (09.07.02 16:31)
[NIKEL] © (09.07.02 16:09)
А если разрешение поменяется во время работы приложения?

///
соответственно отловить и сделать все тоже самое - ScaleBy для всего - советы лучших программероводов :]


 
eSKey   (2002-07-09 17:43) [11]

Насчет учитывания минимального разрешения сказано верно. Правда совсем не обязательно делать все в 640х480 (и даже наоборот, это будет весьма неудобно - разные тулбары/окошки будут наезжать на проектируемую форму). Зачем, если у формы есть высота и ширина, которые можно посмотреть? Я пишу все в 800х600, но при этом слежу, чтобы минимальный рабочий размер окон был меньше чем 640х480, плюс конечно надо учитывать не только возможное разрешение экрана юзера, но и масштаб шрифта - на чем я спотыкался в первый раз, когда надписи наползали друг на друга и обрезались границами формы. И кстати, соответствующие рекомендации есть в Delphi guide & Help.


 
Reindeer Moss Eater   (2002-07-09 18:27) [12]

А в моем методе форма имеет контролы и шрифт одинаковые на всех масштабах шрифта


 
Proton ©   (2002-07-11 02:35) [13]

2Dimich1978
не на грам не лучше
такие программы у меня обычно разом в карзину летят
ты сам подумай
он говорит у меня 1024 а у него 800
ну а если у юзверя режим не держится ? черный экран ?
я вот например сижу в 800*600 и если какая софтина поставит мне 1024 у меня сразу рефреш упадет и я в проге не смогу работать более 30 минут.
понимаеш юзверю не надо навязывать, пусть он сам решит

2maxim2
юзай ScaleBy(100,120)



Страницы: 1 вся ветка

Текущий архив: 2002.07.22;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.011 c
3-70669
cyberwarlock
2002-07-02 12:03
2002.07.22
Небольшая проблемка с TDataBase


1-70767
avr555
2002-07-08 18:11
2002.07.22
Как определили, что щелкнули мышкой не по моему компоненту?


14-70917
_Smart
2002-06-26 02:35
2002.07.22
Atom ы


3-70651
Fissher
2002-07-01 17:19
2002.07.22
Индексы в таблицах Paradox 7


8-70837
Королев
2002-03-15 09:21
2002.07.22
Почему-то Delphi говорит, что не знает комманд WM_CAP_DLG_VIDEOSOURCE или capDlgVideoDisplay(