Autor Beitrag
rn22
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70



BeitragVerfasst: Mo 22.01.07 16:48 
Hallo

Wenn ich ein TImage auf mein Formular bastle und ihm (zur Entwicklungszeit) ein Picture zuweise, wird dieses doch als Nummernfolge in der *.dfm-Datei gespeichert.

Kann ich in ähnlicher Weise diesen Code auch in meiner Unit einsetzten, um dem Image zur Laufzeit ein neues Picture zu geben, ohne aus einer Datei laden zu müssen?

also so etwa wie:

Image1.Picture.Bitmap:=09458730457304753097503945803948503845...


Grüße
Mischa
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10184
Erhaltene Danke: 1259

W11x64
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 22.01.07 16:54 
Moin!

Besser wäre es, wenn du das zusätzliche Bitmap entweder in einer ImageList ablegst (unter ein paar Voraussetzungen, z.B. muss die Größe gleich sein) oder in die Resouce packst. Zum Thema Suche in: Delphi-Forum, Delphi-Library RESOURCE gibt´s hier Threads genug. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
rn22 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70



BeitragVerfasst: Mo 22.01.07 16:59 
Joh, das kenn ich auch. Aber ich dachte, auf die beschriebene Art wärs am einfachsten.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19341
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 22.01.07 17:09 
Das ist auch am einfachsten hunderte Zeilen Code (je nach Größe der Bitmap...) einzufügen... :lol:
Wenn du sehen willst wie das geht, dann füg das Bild im OI ins Bild ein und klick dann mit rechts aufs Formular und sag Als Text anzeigen ;-).

Aber: Empfehlen tue ich es ganz und gar nicht!! Ich möchte dir aber diese Möglichkeit nicht vorenthalten.... ;-)
rn22 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70



BeitragVerfasst: Mo 22.01.07 17:13 
bei mir gehts um zwei ganz kleine Bilder (20x20 oder so). In der erwähnten *.dfm-Datei sind das ca. vielleicht 10 Zeilen...
Chryzler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1097
Erhaltene Danke: 2



BeitragVerfasst: Mo 22.01.07 17:20 
Das geht nicht so ohne weiteres. Du kannst den Text in der .dfm nicht als Quelltext schreiben. Z.B. Image1.Picture.Bitmap.Data ist als private deklariert, du hast darauf also keinen Zugriff.
rn22 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70



BeitragVerfasst: Mo 22.01.07 17:32 
also gehts wohl nur als Resource...
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10184
Erhaltene Danke: 1259

W11x64
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mo 22.01.07 17:38 
Moin!

Nun, Möglichkeiten gibt´s viele, aber die Sinnhaftigkeit ist die vordergründige Frage... :)

Du könntest z.B. auch:
  • ein TImage auf die Form legen, .Visible := FALSE; und dann dessen .Picture.Bitmap-Eigenschaft zuweisen
  • Einen Stream aus dem Bitmap machen, diesen als Hexcode in den Quelltext einfügen und mit geeignetem Code und einem Memory-Stream dazu verwenden, das Bitmap per .LoadFromStream zu setzen

Gibt sicher noch mehr Möglichkeiten, aber ich würde die Resource nehmen. ;)

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Raffo
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 300



BeitragVerfasst: Mo 22.01.07 17:45 
Du kannst ja auch zwei unsichtbare Images platzieren und die "picture.graphic" gegeneinander tauschen. Wenns eh nur zwei Bildchen sind ;)
rn22 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 70



BeitragVerfasst: Mo 22.01.07 21:02 
Ok - vielen Dank für eure Vorschläge