Autor Beitrag
Tobi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 18



BeitragVerfasst: So 21.12.03 13:40 
Wie kann man einem Formular ein Hintergrundbild zuweisen?!
Ich hab bei der normalen Imagekomponente näml. das Problem, dass sie nicht in den Hintergrund "will"...
Lossy eX
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1048
Erhaltene Danke: 4



BeitragVerfasst: So 21.12.03 19:55 
Wie wäre es denn, wenn du das Formular selber zeichnest.
Und zwar nimmst du ein Bitmap das Lädst du in ein TBitmap. Nach Möglichkeit im OnCreate des Fensters.

ausblenden Delphi-Quelltext
1:
2:
Form.Canvas.Brush.Bitmap := Bitmap;
Form.Canvas.FillRect(Form.BoundsRect);

So in etwa müsste das gehen. Das musst du natürlich bei jedem OnPaint durchführen. Geht aber ganz fix. Er Kachelt das dann Automatisch.

Als andere Alternative kannst du auch eine PaintBox mit Align alClient in den Hintergrund deines Fensters legen und darauf zeichnen. Aber Form.Canvas ist da vom Prinzip her das Selbe.
catweasel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 487
Erhaltene Danke: 1

Win 7 64bit
Delphi 7 Second Sedition V7.2
BeitragVerfasst: So 21.12.03 20:13 
Zitat:
Als andere Alternative kannst du auch eine PaintBox mit Align alClient in den Hintergrund deines Fensters legen und darauf zeichnen. Aber Form.Canvas ist da vom Prinzip her das Selbe.


Naja, abgesehen davon dass eine Painbox viel mehr resourcen verbraucht........
und ein onclick auf die Form ist nicht mehr so ohne weiteres möglich (falls gebraucht)

das mit dem bitmap ist da besser..

Catweasel

_________________
Pommes werden schneller fertig wenn man sie vor dem Frittieren einige Minuten in siedendes Fett legt.
Tobi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 18



BeitragVerfasst: Mo 22.12.03 23:53 
hm, ich hab das jetzt mal ausprobiert, also aus einer imagesammlung ein bild in Bitmap geladen und obigen Code getestet. Leider wird kein Hintergrundbild angezeigt.
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Di 23.12.03 23:20 
Delphi Hilfe hat folgendes geschrieben:

If the image is larger than eight pixels by eight pixels, only the top left eight-by-eight region is used.


Das scheint aber auch vom OS abzuhängen. Bei mir (WinXP) zeichnet er das gesamte Bitmap.[/quote]
recall
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 449



BeitragVerfasst: Mi 24.12.03 00:18 
@Tobi: Wo hast du denn die Proc hingesetzt ? Ins OnPaint ?
@obbschtkuche: Läuft unter Win95, XP, 2000, NT4.0... Würde mich auch sehr wundern wenn nicht ?!? Meine Delphi-Hilfe sagt sowas auch nicht (D7 Enterprise)

Viele Grüsse.