AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bild aus Scrollbox in ein Image laden

Ein Thema von ereetzer · begonnen am 25. Nov 2012 · letzter Beitrag vom 26. Nov 2012
Antwort Antwort
ereetzer

Registriert seit: 21. Mär 2003
86 Beiträge
 
Delphi XE Starter
 
#1

Bild aus Scrollbox in ein Image laden

  Alt 25. Nov 2012, 14:00
Delphi-Version: 5
Hallo zusammen,
siehe Betreff. Wie mach ich denn das? Was ich bisher habe:

Einscannen von einem/mehreren Dokumenten. Das aktuelle Bild wird dargestellt in einem Image.
Bei mehreren Dokumenten werden die einzelnen Dokumente in eine Scrollbox geladen. Das zuletzt gescannte wird dabei angezeigt.

Nun möchte ich aber unter Umständen, nachdem ich meinetwegen 5 Dokumente gescannt habe, mit das zweite nochmal angucken.

Nun, wir krieg ich das 2. Image aus der Scrollbox in ein Image wenn ich darauf klicke?

So landen die Images in der Scrollbox:
Delphi-Quellcode:
  ImageX := TImage.Create(ScrollBox);
  ImageX.Parent := ScrollBox;
  if AnzahlDokumenteCount = 1 then ImageX.Left := 10;
  if AnzahlDokumenteCount > 1 then ImageX.Left := ((StrToInt(Label2.Caption) - 1) * (65 + 10)) + 10;
  ImageX.Width := 65;
  ImageX.Height := 95;
  ImageX.Name := 'Dokument' + IntToStr(AnzahlDokumenteCount);
  ImageX.Proportional := True;
  ImageX.Picture.Assign(Image);
  ImageX.Tag := AnzahlDokumenteCount;
Irgendwie dacht ich da FindComponent. Aber evtl. bin ich da auf dem Holzweg. Zumindest kann ich nach Internetrecherche und eigenem Versuchen nichts brauchbares vorweisen.

    Imageholder1.Picture.Assign(FindComponent('Dokument2')); Das funktioniert jedenfalls nicht. Und ich steig da auch irgendwie nicht so dahinter bei Findcomponent etc.

Könnt Ihr mir einen Tip geben?
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Bild aus Scrollbox in ein Image laden

  Alt 25. Nov 2012, 14:16
Sobald du nicht mehr versuchst die visuellen Controls als Datenspeicher zu missbrauchen, wird es ganz einfach
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
ereetzer

Registriert seit: 21. Mär 2003
86 Beiträge
 
Delphi XE Starter
 
#3

AW: Bild aus Scrollbox in ein Image laden

  Alt 25. Nov 2012, 14:27
Sobald du nicht mehr versuchst die visuellen Controls als Datenspeicher zu missbrauchen, wird es ganz einfach
Magst Du mir das auch erklären, bitte? Und mich in die richtige Richtung schubsen?

(Das ich das mit Sicherheit nicht sehr elegant mache, das ist ist mir durchaus klar)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Bild aus Scrollbox in ein Image laden

  Alt 25. Nov 2012, 17:17
Schau dir mal diesen Beitrag an:

http://www.delphipraxis.net/55941-li...er-bilder.html

Die Bilder werden in einer Liste verwaltet TList<TPicture> .
Die ListBox füllt sich aus dieser Liste, und über ListBox.ItemIndex weißt du welches Bild gemeint ist und kannst dieses Bild in die TImage Komponente laden.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
675 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Bild aus Scrollbox in ein Image laden

  Alt 26. Nov 2012, 07:15
FindComponent liefert Dir das das TImage... das weist Du einem TPicture zu - das kann ja nicht klappen

Was Du eigentlich machen wolltest, war vermutlich eher sowas:

Delphi-Quellcode:
cmp := FindComponent('name');
if cmp is TImage then begin
   Imageholder1.Picture.Assign(TImage(cmp).Picture);
end;
  Mit Zitat antworten Zitat
ereetzer

Registriert seit: 21. Mär 2003
86 Beiträge
 
Delphi XE Starter
 
#6

AW: Bild aus Scrollbox in ein Image laden

  Alt 26. Nov 2012, 08:03
FindComponent liefert Dir das das TImage... das weist Du einem TPicture zu - das kann ja nicht klappen

Was Du eigentlich machen wolltest, war vermutlich eher sowas:

Delphi-Quellcode:
cmp := FindComponent('name');
if cmp is TImage then begin
   Imageholder1.Picture.Assign(TImage(cmp).Picture);
end;
Danke, hatte es nach langem studium von findcomponent ähnlich gemacht:

Imageholder.Picture.Assign(TImage(Sender).Picture); Hab das in einem noch erstelltem Ereignis "OnMouseKlick" bei ImageX benutzt.

Danke auch an SirRufo bzgl. dem Hinweis mit den visuellen Controls. Hab mir da auch was zu durchgelesen.

Gruß
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:12 Uhr.
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