Jak upravit velikost komponenty TImage – Delphi – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Jak upravit velikost komponenty TImage – Delphi – Fórum – Programujte.comJak upravit velikost komponenty TImage – Delphi – Fórum – Programujte.com

 

Borisek0
Stálý člen
21. 7. 2012   #1
-
0
-

Zdravím.
Poradte jak na to.

Přes Listbox načitam do Image obrazky

chci docilit tohoto.

pokud je obrazek menši jak Image1.Height 300 a menši jak Image1.width 600  tak se normalně načte a   AutoSize := true.
Pokud je však větši tak se velikost upravi tak aby Image1.Height nepřesahlo 300 a šiřka by se opravile poměru ;
Nevim jak docilim toho aby zustal poměrově stejny.

Nahlásit jako SPAM
IP: 81.30.255.–
zdenda
~ Anonymní uživatel
257 příspěvků
21. 7. 2012   #2
-
0
-

Tak ten poměr zjisti a zachovej.

pomer := origVyska / origSirka;
novaVyska := 300;
novaSirka := 300 / pomer;
Nahlásit jako SPAM
IP: 80.188.216.–
Borisek0
Stálý člen
22. 7. 2012   #3
-
0
-

A pomer ma byt jaky typ proměnné.

Ja už snad vyzkoušel vše a bud to nesežere toto "pomer := Image1.Height / Image1.width;"

nebo toto '''Image1.width := 300 / pomer;'

procedure TForm1.ListBox1Click(Sender: TObject);
var cesta,a:string;
    pomer:Single;
begin
  Image1.AutoSize := true;
  a:=ListBox1.Items[ListBox1.ItemIndex];
  cesta := '.\'+ a +'\Image.jpg' ;
  If FileExists(Cesta)= true then Image1.Picture.LoadFromFile(cesta) else Image1.Picture:=nil;

  if (Image1.Height > 300) or   (Image1.width > 600)   then
                                                          begin
                                                              pomer := Image1.Height / Image1.width;
                                                              Image1.Height := 300;
                                                              Image1.width := 300 / pomer;
                                                          end;

Nahlásit jako SPAM
IP: 81.30.255.–
Sniper
~ Anonymní uživatel
215 příspěvků
22. 7. 2012   #4
-
0
-

   

Image1.width := Round(300 / pomer);

nebo

Image1.width := Trunc(300 / pomer);

Výběr je na tobě, nápovědu máš, tak si dohledej rozdíl.
Nahlásit jako SPAM
IP: 90.179.201.–
Borisek0
Stálý člen
22. 7. 2012   #5
-
0
-

Diky 

Nahlásit jako SPAM
IP: 81.30.255.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 5 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý