![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как подстроить свою прогу под расширение монитора пользователя [D6]
maxim2 © (2002-07-09 13:05:00)Привет всем!
Например у меня расширение монитора 1024 на 768 а у пользователя 800 на 600 и когда он запускает прогу то она выходит за пределы экрана. Как бы сделать чтобы прога работала бы и под расширением 1024 и под 800
Proton (2002-07-11 02:35:00) [1]2Dimich1978
не на грам не лучше
такие программы у меня обычно разом в карзину летят
ты сам подумай
он говорит у меня 1024 а у него 800
ну а если у юзверя режим не держится ? черный экран ?
я вот например сижу в 800*600 и если какая софтина поставит мне 1024 у меня сразу рефреш упадет и я в проге не смогу работать более 30 минут.
понимаеш юзверю не надо навязывать, пусть он сам решит
2maxim2
юзай ScaleBy(100,120)
Reindeer Moss Eater (2002-07-09 18:27:00) [2]А в моем методе форма имеет контролы и шрифт одинаковые на всех масштабах шрифта
eSKey (2002-07-09 17:43:00) [3]Насчет учитывания минимального разрешения сказано верно. Правда совсем не обязательно делать все в 640х480 (и даже наоборот, это будет весьма неудобно - разные тулбары/окошки будут наезжать на проектируемую форму). Зачем, если у формы есть высота и ширина, которые можно посмотреть? Я пишу все в 800х600, но при этом слежу, чтобы минимальный рабочий размер окон был меньше чем 640х480, плюс конечно надо учитывать не только возможное разрешение экрана юзера, но и масштаб шрифта - на чем я спотыкался в первый раз, когда надписи наползали друг на друга и обрезались границами формы. И кстати, соответствующие рекомендации есть в Delphi guide & Help.
[NIKEL] (2002-07-09 16:39:00) [4]2 TTCustomDelphiMaster © (09.07.02 16:31)
[NIKEL] © (09.07.02 16:09)
А если разрешение поменяется во время работы приложения?
///
соответственно отловить и сделать все тоже самое - ScaleBy для всего - советы лучших программероводов :]
Игорь Шевченко (2002-07-09 16:35:00) [5]TTCustomDelphiMaster © (09.07.02 16:31)
> и 16 цветов радуги :)
Было 16, теперь мин. требования 256 цветов.
Я рекомендую прочитать
http://msdn.microsoft.com/library/default.asp?URL=/library/partbook/winguide/welcome.htm
TTCustomDelphiMaster (2002-07-09 16:31:00) [6][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 цветов радуги :)
[NIKEL] (2002-07-09 16:09:00) [7]Для определения текущего разрешения есть свойство Width & Height глобальной переменной Screen... Я например использую всегда ScaleBy для масштабирования под разные разрешения - главное подсчитать коэффициент масштабирования, деля разрешения экрана во время создания приложения на разрешение экрана во время запуска пиложения. Именно этот коэффициент и используется для свойства ScaleBy
grig (2002-07-09 16:03:00) [8]Используй свойства Allign, Anchors и Constraints у объектов в окне. И, конечно тестируй на разных разрешениях.
Успехов
Игорь Шевченко (2002-07-09 16:00:00) [9]Умные люди (Microsoft) рекомендуют разрабатывать программу для разрешения 640 x 480, тогда во всех остальных разрешениях она гарантировано будет работать.
TTCustomDelphiMaster (2002-07-09 15:53:00) [10]Делай под 800x600, а уж на 1024 она как нибудь будет работать
Reindeer Moss Eater (2002-07-09 14:25:00) [11]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;
Dimich1978 (2002-07-09 14:16:00) [12]А лучше бери и на время пока выполняется твоя прога поменяй разрешение экрана(из свей проги). Как это можно сделать смотри
http://www.symbol.ru/library/delphi_secrets/
Dimich1978 (2002-07-09 14:03:00) [13]Либо определять размеры экрана и соответственно рассчитывать все компаненты, либо этого легко добится используя Panel.