Bitmap im Container

06/11/2008 - 12:19 von Fred Aurich | Report spam
Hallo,

hier fehlt mir ein Stück Verstàndniss (wissen).

Ich möchte ein Bitmap (animiertes Gif) in einem Container anzeigen.

Dazu lade ich die Gif-Datei aus einer Resource und will sie dann im
Container anzeigen.

Direkt auf dem Form ist es kein Problem (funktioniert). Ich schaffe es aber
nicht das Bitmap in den Container zu bringen.
habe es mal so versucht:
this.panel1.Controls.Add(this.bmp_warten1); // Grafik dem
Pannel zuordnen

Da kommt aber die Fehlermeldung:
1-Argument: kann nicht von "System.Drawing.Bitmap" in
"System.Windows.Forms.Control" konvertiert werden.
irgendwie logisch aber wie? ordne ich ein Bitmap einem Container zu?

So geht es auf dem Form:

public partial class warten : Form
{
Bitmap bmp_warten1 = Properties.Resources.warten1; // Bild1
initalisieren
Bitmap bmp_warten2 = Properties.Resources.warten2; // Bild2
initalisieren

public warten()
{
InitializeComponent();

if (ImageAnimator.CanAnimate(bmp_warten1))
ImageAnimator.Animate(bmp_warten1, this.onNextFrame);
if (ImageAnimator.CanAnimate(bmp_warten2))
ImageAnimator.Animate(bmp_warten2, this.onNextFrame);

// Flackern unterbinden
SetStyle(ControlStyles.UserPaint, true);
SetStyle(ControlStyles.AllPaintingInWmPaint, true);
SetStyle(ControlStyles.DoubleBuffer, true);
}

private void onNextFrame(object o, EventArgs e) //
Eventhandler-Routine bei (internen) Bildwechsel
{
this.Invalidate();
}

protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawImage(bmp_warten1, 62, 58);
e.Graphics.DrawImage(bmp_warten2, 265, 11);
ImageAnimator.UpdateFrames();
}
}

Fred Aurich

PS.:
Die animierte Gif kann ich zwar auch direkt in einer PictureBox anzeigen,
aber da bleibt sie, wenn ich im "Hintergrund" Datenbank-Abfragen auslöse,
stehen.

Kann mir jemand helfen??
 

Lesen sie die antworten

#1 Herfried K. Wagner [MVP]
06/11/2008 - 13:45 | Warnen spam
"Fred Aurich" schrieb:
Ich möchte ein Bitmap (animiertes Gif) in einem Container anzeigen.

Dazu lade ich die Gif-Datei aus einer Resource und will sie dann im
Container anzeigen.

Direkt auf dem Form ist es kein Problem (funktioniert). Ich schaffe es
aber
nicht das Bitmap in den Container zu bringen.
habe es mal so versucht:
this.panel1.Controls.Add(this.bmp_warten1); // Grafik dem
Pannel zuordnen

Da kommt aber die Fehlermeldung:
1-Argument: kann nicht von "System.Drawing.Bitmap" in
"System.Windows.Forms.Control" konvertiert werden.
irgendwie logisch aber wie? ordne ich ein Bitmap einem Container zu?



Weise das Bild beispielsweise der 'Image'-Eigenschaft eines
PictureBox-Steuerelements zu, das sich im Container befindet. Alternativ
kannst Du die 'BackgroundImage'-Eigenschaft des Containers setzen.

M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://dotnet.mvps.org/dotnet/faqs/>

Ähnliche fragen