Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Justierung von Images auf Panels(bei Zoom+ -) (https://www.delphipraxis.net/52745-justierung-von-images-auf-panels-bei-zoom.html)

Hallo_Thomas 2. Sep 2005 17:10


Justierung von Images auf Panels(bei Zoom+ -)
 
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo,

ich wollte Meine Bilder auf einem Panel Gruppieren, da ich es in verschieden grössen darstellen wollte, das Problem ist das die Bilder sich alle irgendwie komisch verschieben, und nicht gleichmässig grösser werden, wenn ich das Panel vergrössere.

Wie kann ich das besser umsetzen, bzw, was mache ich verkehrt?

Hallo_Thomas 3. Sep 2005 21:36

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Ich hoffe mir Antwortet jemand, wie bildet Ihr eigentlich gruppen von Bildern, bei unterschiedlicher Bildschirmauflösung?

DGL-luke 3. Sep 2005 21:41

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
hol dir erstmal Hier im Forum suchenGraphics32, dann können wir weiterreden. ;)

Nein, wirklich, die Graphics32-Lib erleichtert den Umgang und das Manipulieren von Bilder immens.

Hallo_Thomas 4. Sep 2005 00:52

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
So hab mir jetzt mal Graphics32 runtergeladen und angeschaut. Ist zwar recht interesant, aber ich weis nicht wie mir es helfen sollte die Grafiken auf Ihrer Position zu halten?

Hallo_Thomas 4. Sep 2005 02:24

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Liste der Anhänge anzeigen (Anzahl: 1)
So, hab jetzt hier mal nenn versuch mit Graphics32 unternommen un d das Programm angehängt, mache jetzt keine neuen Bilder, Irgendwie schaffe ich es da auch nicht, das sich alles gleichmässig vergrössert.

turboPASCAL 4. Sep 2005 09:10

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Hallo Thomas

Ne, so wird es nix werden. Du hast ein Image in bzw. auf dem du noch 5 Images hat von denen keines so genau wies wohin es sich vergrössern/verkleinern soll. Das heisst wenn du nur das Panel, auf dem die Images sind, vergrössern/verkleinern willst must du schon ein par Berechnungen anstellen.

Was möchtest denn du damit machen bzw. wie oder was soll das den werden ?

DGL-luke 4. Sep 2005 09:43

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Du hast bei Graphics32 die Komponente TImgView32, die mit der Eigenschaft Scale einen Zoomfaktor hat.

turboPASCAL 4. Sep 2005 10:35

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:

Du hast bei Graphics32 die Komponente TImgView32, die mit der Eigenschaft Scale einen Zoomfaktor hat.
@DGL-luke schaue dir doch mal sein Prg. an....

So, ein Demo....

Hallo_Thomas 5. Sep 2005 17:36

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Liste der Anhänge anzeigen (Anzahl: 1)
@ turboPASCAL

Ich find es recht praktich für Bilder die irgendwie nebeneinander liegen und so.
Aber ich hab 2 Probleme damit, das kleinere(was ich mirvielleicht sogar zutraue selst zu lösen indem ich das Bild aufstückle)ist, das mir einBild im Bild liegt und sich alles daran ausrichtet. Das 2 grössere ist, ich habe wohl ca. 200 Bildchen die im zusammenhang zueinnander stehen., ies alles mit dem Code zu vereinbaren, wäre meiner Meinung ne Hundearbeit)

Mal so von meiner Logik her, wenn ich die Bild über nenn Code bei der Bildschirmauflösung, vergrösserer bzw., Verkleinerer klappt es ja, also müsste esdoch auch irgendwie klappen,die Bildchen so zu vergrössern das sie Ihre Position zueinander behalten.


Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, GR32_Image, StdCtrls;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Button3: TButton;
    Button2: TButton;
    Button1: TButton;
    Image6: TImage;
    Image7: TImage;
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
    procedure ResizeImages(ZoomSize: Extended);
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

var
  Zoom : Extended = 0;

procedure TForm1.ResizeImages(ZoomSize: Extended);
begin
  // Image Grösse anpassen
  Image7.Width := Round(Image7.Width * ZoomSize);
  Image7.Height :=Round(Image7.Height * ZoomSize);

  Image6.Left := Round(Image7.Left + Image7.Width) -510;
  Image6.Top := Round(Image7.Top + Image7.Height) -205;
  Image6.Width := Round(Image6.Width * ZoomSize);
  Image6.Height := Round(Image6.Height * ZoomSize);

end;

procedure TForm1.Button1Click(Sender: TObject); // Zoom "+" Btn
begin
    Zoom := + 1.1;
    ResizeImages(Zoom);

end;

procedure TForm1.Button2Click(Sender: TObject); // Zoom "-" Btn
begin
  begin
    Zoom := 0.9;
    ResizeImages(Zoom);
  end;
end;

procedure TForm1.Button3Click(Sender: TObject); // Close Btn
begin
  Close;
end;

end.

turboPASCAL 5. Sep 2005 19:46

Re: Justierung von Images auf Panels(bei Zoom+ -)
 
Code:
//...
  Image6.Left := Round(Image7.Left + Image7.Width) - [color=red]510[/color];
  Image6.Top := Round(Image7.Top + Image7.Height) - [color=red]205[/color];
Diese Werte musst du auch mit dem Zoom (im Verhältnis zu, also auch vergrössern und verkleinern) anpassen, sonst wird es nix und dein Bild verschiebt sich Diagonal oder so.


Darf ich mal nach dem Zweck fragen, soll das ein Weihnachtskalender werden ? ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:49 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz