Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2012.02.19;
Скачать: [xml.tar.bz2];

Вниз

Предосмотр картинки на форме   Найти похожие ветки 

 
Laguna ©   (2011-11-10 16:44) [40]


> а зачем нужен размер всей формы? Достаточно знать размеры
> клиентской области

Ну это я все из той оперы, что высчитав размер картинки подгоняю под нее форму, чтобы якобы красиво упакована картинка была при просмотре.

procedure TGladImageFrm.ShowImage;
begin
 Im_W := Image1.Picture.Width; {ширина картинки}
 Im_H := Image1.Picture.Height; {высота картинки}
 F_CW := GladImageFrm.ClientWidth; {800 - ширина формы}
 F_CH := GladImageFrm.ClientHeight;{600 - высота формы}

 if Im_W < Im_H then
  Ratio := Trunc(600 * Im_W/Im_H)
 else
  Ratio := Trunc(800 * Im_H/Im_W);

 if (Im_W < F_CW) and (Im_H < F_CH) then
  begin
    GladImageFrm.ClientWidth := Im_W;
    GladImageFrm.ClientHeight := Im_H;
  end
 else
  if (Im_W < F_CW) and (Im_H > F_CH) then
   GladImageFrm.ClientWidth := Trunc(Ratio)
 else
  if (Im_W > F_CW) and (Im_H < F_CH) then
   GladImageFrm.ClientHeight := Trunc(Ratio)
 else
  if (Im_W > F_CW) and (Im_H > F_CH) and (Im_W < Im_H) then
   GladImageFrm.ClientWidth := Trunc(Ratio)
 else
  if (Im_W > F_CW) and (Im_H > F_CH) and (Im_W > Im_H) then
   GladImageFrm.ClientHeight := Trunc(Ratio)
 else
  if (Im_W = F_CW) and (Im_H <> F_CH) then
   begin
      {Еще не придумал}
   end;
 left := (Screen.Width div 2) - (Width div 2);
 top  := (Screen.Height div 2) - (Height div 2);
end;


В этом коде tit максимайз не обработан, точнее размер картинки и формы при максимайзе.



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

Форум: "Начинающим";
Текущий архив: 2012.02.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.005 c
2-1320786460
I
2011-11-09 00:07
2012.02.19
Компиляция в командной строке


15-1319888631
flur
2011-10-29 15:43
2012.02.19
comport


6-1251306114
Pirog
2009-08-26 21:01
2012.02.19
Получить список имена доменов


15-1320179402
Юрий
2011-11-01 23:30
2012.02.19
С днем рождения ! 2 ноября 2011 среда


9-1190241696
3DMax
2007-09-20 02:41
2012.02.19
Вопрос по кривым Безье





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский