![]() |
Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Hi an die gesamte Community!
Ich schreibe ein Programm mit Delphi 7, indem ich ein Spiel simulieren will, um mir das ganze ein bisschen selber beizubringen. Da meine letzte Schulpraxis mit Delhpi etwa 8 Jahre zurück liegt, habe ich ein paar Grund legende Sachen auch schon wieder vergessen. Nun zu meiner Situation: Ich habe ein Image, das die Umgebung darstellet auf den sich die Figur bewegen soll. Darauf liegt ein TAnimate, das als Display für den Mediaplayer dient und die bewegende Figur darstellt. Das Problem: Ich habe eine eigene AVI-datei erstellt und den Hintergrund weiß gelassen. Obwohl ich beim Animate transparent auf "true" gestellt habe, bleibt der Hintergrund weiß. Wie kann ich das ändern? Brauch ich eine bestimmte farbe oder gibt es eine besondere funktion, die ich vielleicht noch nicht kenne? Ich bedanke mich im Voraus |
AW: Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Willkommen in der DP und zurück zu Delphi :)
Es gibt 3 Wege, wie einfache Transparenz üblicherweise (in Delphis Standardkomponenten) gehandhabt wird: 1) Die Farbe clFuchsia (R=255, G=0, B=255) wird als transparente Farbe verwendet 2) Die Farbe des oberen linken Pixels (Koordinaten (0, 0)) wird als transparente Farbe verwendet 3) Es gibt eine Eigenschaft, über die die transparente Farbe im Objektinspektor direkt angegeben wird (üblicherweise mit clFuchsia vorbelegt) Da ich TAnimate noch nie eingesetzt habe, weiss ich spontan nicht was hier zum Einsatz kommt. Aber das wären die Dinge, nach denen du mal schauen könntest. |
AW: Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Hallo,
wenn Du Dein AVI nicht auf clFuchsia umstellen willst, dann kann Du anstatt
Delphi-Quellcode:
versuchen Deinem AVI die transparente Farbe mitzuteilen. Sollte mit folgender Funktion klappen:
Animate1.Tramsparent := True
Delphi-Quellcode:
SetBkColor (Animate1.Handle, clWhite);
Gruß |
AW: Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Danke für dieschnellen Antworten! :)
Zitat:
Ich habe auch die Farbe clFuchsia als Hintergund erstellt (rot:255, gelb:0, blau:255). Aber auch das funktioniert nicht. Wie kann ich mir die Transparente Frabe denn anzeigen lassen? Zitat:
Wenn nicht kann es sein, das Transparent auf "fasle" stehen muss? Bisher habe ich immer selbst eine Lösung gefunden, aber diesmal bin ich echt ratlos. Aber ich denke mir das die Lösung ganz simpel ist. Ich setze gedanklich bestimmt nur falsch an. |
AW: Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Das Transparent bezieht sich nur auf die Darstellung des Avis, welche der Farben hier transparent sein soll, dort wird dann die Hintergrundfarbe des TAnimate dargestellt. Das Control selbst ist von TWinControl abgeleitet und wird nicht transparent.
|
AW: Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Ok, danke Bummi...gibt es vielleicht eine Alternative?
Bei einem Image klappt das mit der Transparenz ja ganz gut. Das Problem ist nur, dass von 5 Bildern nur das erste und das letzte angezeigt werden, wenn das letzte Bild dem ersten entspricht. Ich weiß, dass man mehrere Images benutzen, sie übereinander legen und sie einzeln sichtbar machen kann. Das finde ich aber nicht ganz so elegant. Außerdem möchte ich nicht für jede Figur mehrere Images benutzen. Gibt es in diesem Fall vielleicht eine Lösung? |
AW: Wie kann ich den Hintergrund des Mediaplayer-Displays transparent machen?
Ich (persönlich) würde mich von dem Konzept Image und TAnimate komplett verabschieden und die Animation in einem TGraphicContol (im primitivsten Fall TPaintbox) direkt darstellen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz