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

Вниз

Разрешение экрана и форма   Найти похожие ветки 

 
Monah   (2005-11-01 15:42) [0]

Скажите пожалуйста как сделать чтобы при различных разрешениях экрана программа нормальо выглядела. И как сделать чтобы все кабы сжималось при изменение разиеров


 
Nitur   (2005-11-01 17:45) [1]

Кажеться есть какойто там проседура масштабирования точно незнаю. может кто знает тоже это интересует


 
ArchValentin ©   (2005-11-02 01:37) [2]


> Nitur   (01.11.05 17:45) [1]

мда, мужик, ты конечно помог... :)))


 
Nitur   (2005-11-02 19:33) [3]

ArchValentin
ну помоги если знаешь я просто слышал такое


 
Sysanin   (2005-11-03 12:09) [4]

Можно попробовать узнать текущее разрешение экрана и уже подгонять по нему как нужно. Текущее разрешение экрана можно узнать с помощью вызова GetSystemMetrics() в качестве параметров передается: SM_CXSCREEN высота рабочей области экрана в пикселах SM_CYSCREEN ширина рабочей области экрана в пикселах SM_CXFULLSCREEN высота всей экранной области в пикселах SM_CYFULLSCREEN ширина всей экранной области в пикселах Ниже приведен пример получения высоты и ширины рабочей области экрана (для всей экранной области надо просто поменять параметры вызова GetSystemMetrics): Var x, y : Integer; Mode:String; begin x:=GetSystemMetrics(Sm_Cxscreen); y:=GetSystemMetrics(Sm_CYscreen); Mode:=Format("%d x %d",[x,y]); If y=480 Then Mode:=Mode+("Standard VGA") Else Mode:=Mode+("Super VGA"); StaticText1.Caption:=Mode;


 
Floppy ©   (2005-11-03 13:33) [5]

>Monah   (01.11.05 15:42)  
Прежде всего поясни, что для тебя означает - при различных разрешениях экрана программа нормально выглядела
В чем заключается ненормальность при различных разрешениях? Решения тебе надеюсь подскажут


 
Monah   (2005-11-03 14:05) [6]

ну я делаю 1024 768
при 800 600 у проги появляеться скролбары а при 1280 там вообще свободно еместо


 
Floppy ©   (2005-11-03 16:34) [7]

Попробуй так:

procedure TForm1.FormCreate(Sender: TObject);
const
 cScreenWidth: integer = 1024;
 cScreenHeight: integer = 768;
 cPixelsPerInch: integer = 96;
 cFontHeight: integer = -11; {В режиме проектирование значение из Font.Height}

begin
 if (Screen.width > cScreenWidth) or (Screen.PixelsPerInch <>
   cPixelsPerInch) then
 begin
   Form1.scaled := TRUE;
   Form1.height := Form1.height * screen.Height div cScreenHeight;
   Form1.width := Form1.width * screen.width div cScreenWidth;
   Form1.ScaleBy(screen.width, cScreenWidth);
 end;
if (Screen.PixelsPerInch <> cPixelsPerInch) then
 begin
   for ii := Form1.ControlCount - 1 downto 0 do
     TFooClass(Form1.Controls[ii]).Font.Height:=
       (Form1.Font.Height div cFontHeight) *
       TFooClass(Form2.Controls[ii]).Font.Height;
 end;
end;


Возможно поможет


 
msguns ©   (2005-11-03 16:41) [8]

>Floppy ©   (03.11.05 16:34) [7]

Ух, лихо ! А как быть с тем, что на "экране" может быть еще панель задач, офисная панель и еще что-нибудь "панельное" ?
А просто использовать якоря, выравнивание и сплиттеры ?


 
Duralei   (2005-11-03 17:30) [9]

флоппи спасибо щя проверю и еще сразу вопрос а как сделать чтобы наприме при изменение размеров формы? то есть при ресайзе как делать? тчобы иео и другие уменьшались?



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

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

Наверх




Память: 0.49 MB
Время: 0.053 c
14-1130765663
oldman
2005-10-31 16:34
2005.11.20
Годограф Михайлова...


6-1123507959
Lesha_
2005-08-08 17:32
2005.11.20
Работа с КПК через WiFi


4-1126964773
NikNet
2005-09-17 17:46
2005.11.20
У меня есть HDC как мне нарисовать иконку на ней?


3-1128676210
Zhekson
2005-10-07 13:10
2005.11.20
Можно ли вставить картинку в DBGrid???


14-1130740490
pavel_guzhanov
2005-10-31 09:34
2005.11.20
Книга Марко Кэнту