Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Panelgröße an Videogröße anpassen (https://www.delphipraxis.net/43138-panelgroesse-videogroesse-anpassen.html)

DymonD 29. Mär 2005 18:25


Panelgröße an Videogröße anpassen
 
Hi,

Ich habe einen TMediaPlayer und einen Panel2 als Display. Nun wenn ich größere Videodateien wiedergebe, sehe ich auf dem Display nur ein Teil davon. Ich würde gerne die Panel-Größe an die Videogröße anpassen, wie bei einem TImage. Wenn ich Panel2.AutoSize auf true setze, sehe ich das Video gar nicht mehr. Geht das überhaupt und wenn dann wie? Ich habe schon im Kontextmenü des TMediaPlayer gestöbert, konnte aber nichts dementsprechend passendes finden.
Habt ihr vielleicht eine Ahnung?
Danke im Voraus.

PS: Alternative ist wenn ich kein Display definiere, dass ein neues Fenster aufgeht, das auch passend zur Videodatei ist, und das Video dann dort wiedergegeben wird. Dies ist aber nicht das Gelbe vom Ei und sieht nicht so toll aus.

Christian Seehase 29. Mär 2005 18:41

Re: Panelgröße an Videogröße anpassen
 
Moin Dimitri,

schau Dir mal die Eigenschaft DisplayRect an.
Nach dem Öffnen des MediaPlayers sollte dieser die erforderlichen Abmessungen enthalten, so das Du das Panel entsprechend einstellen kannst.

DymonD 29. Mär 2005 19:08

Re: Panelgröße an Videogröße anpassen
 
Funzt wunderbar. Einfach klasse!
Dankeschön :thumb: !!!

Hey, vielleicht weißt du auch, wie ich die Lautstärke verändern kann? Suche nach Volume oder SetVolume blieb ergebnislos... :wall:

Christian Seehase 29. Mär 2005 19:13

Re: Panelgröße an Videogröße anpassen
 
Moin Dimitri,

tut mir leid, dass weiss ich nicht.
Mach' aber bitte für eine neue Frage auch einen neuen Thread auf.
Danke.

SirThornberry 29. Mär 2005 19:17

Re: Panelgröße an Videogröße anpassen
 
geht wie folgt:
Delphi-Quellcode:
const
  MCI_SETAUDIO = $0873;
  MCI_DGV_SETAUDIO_VOLUME = $4002;
  MCI_DGV_SETAUDIO_ITEM = $00800000;
  MCI_DGV_SETAUDIO_VALUE = $01000000;

type
  MCI_DGV_SETAUDIO_PARMS = record
    dwCallback: DWORD;
    dwItem: DWORD;
    dwValue: DWORD;
    dwOver: DWORD;
    lpstrAlgorithm: PChar;
    lpstrQuality: PChar;
  end;

[...]
procedure TForm1.SetMPVolume(MP: TMediaPlayer; Volume: Integer);
var
  p: MCI_DGV_SETAUDIO_PARMS;
begin
  p.dwCallback := 0;
  p.dwItem := MCI_DGV_SETAUDIO_VOLUME;
  p.dwValue := Volume;
  p.dwOver := 0;
  p.lpstrAlgorithm := nil;
  p.lpstrQuality := nil;
  mciSendCommand(MP.DeviceID, MCI_SETAUDIO,
    MCI_DGV_SETAUDIO_VALUE or MCI_DGV_SETAUDIO_ITEM, Cardinal(@p));
end;

DymonD 29. Mär 2005 19:24

Re: Panelgröße an Videogröße anpassen
 
@ SirThornberry:
Danke, aber wenn du mir noch sagen könntest, wohin mit dem type wäre es noch besser :lol:
Ich kriege nämlich folgende Fehlermeldung:
[Fehler] mainframe.pas(86): Undefinierter Bezeichner: 'mciSendCommand'

SirThornberry 29. Mär 2005 19:38

Re: Panelgröße an Videogröße anpassen
 
du musst die unit "mmsystem" einbinden

DymonD 29. Mär 2005 19:58

Re: Panelgröße an Videogröße anpassen
 
Geht auch wunderbar.
Dankeschön!

PS: Der fertige Player wird auf meiner HP veröffentlicht!


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:25 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