![]() |
AW: Mediaplayer Firemonkey
Nur der Vollständigkeit halber, wie man das plattformübergreifend aufbauen sollte:
|
AW: Mediaplayer Firemonkey
So habe mal den Quellcode, wie es hathor geschrieben hat umgesetzt. Die unit mediaPlayerStretchFix; //20150927 eingebunden und tatsächlich, eine neue Funktion stretch steht bereit. Ich habe den MediaControl auf Client gestellt, aber leider wird das Bild nicht grösser.
Wo habe ich was falsch gemacht oder übersehen? Liebe Grüsse Holger |
AW: Mediaplayer Firemonkey
Liste der Anhänge anzeigen (Anzahl: 1)
Ohne Sourcecode kann man nicht einmal raten...
Delphi-Quellcode:
Nichts vergessen?
procedure TForm1.FormResize(Sender: TObject);
begin if (MediaPlayer1.State = TMediaState.Playing) then TWindowsMedia (Mediaplayer1.Media).stretch; end; |
AW: Mediaplayer Firemonkey
Alles klar.
Delphi Quellcode
Delphi-Quellcode:
unit unitmedia;
interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Media.Win, FMX.Controls.Presentation, FMX.StdCtrls,mediaPLayerStretchFix, FMX.Media, FMX.Objects; type Tplayer = class(TForm) OpenDialog1: TOpenDialog; Button1: TButton; MediaPlayer1: TMediaPlayer; MediaPlayerControl1: TMediaPlayerControl; Button2: TButton; Button3: TButton; Button4: TButton; Image1: TImage; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure OpenDialog1Close(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var player: Tplayer; implementation {$R *.fmx} procedure Tplayer.Button1Click(Sender: TObject); var pfad: String; begin pfad := 'D:\PROGRAMME\SEHTEST mit externen Bildern V3\Win32\Debug\Filme\'; OpenDialog1.InitialDir := pfad; OpenDialog1.Execute; end; procedure Tplayer.Button2Click(Sender: TObject); begin MediaPlayer1.Play; end; procedure Tplayer.Button3Click(Sender: TObject); begin MediaPlayer1.Stop; end; procedure Tplayer.Button4Click(Sender: TObject); begin if (MediaPlayer1.State = TMediaState.Playing) then begin TWindowsMedia(MediaPlayer1).stretch; end; end; procedure Tplayer.OpenDialog1Close(Sender: TObject); begin MediaPlayer1.FileName := OpenDialog1.FileName; end; end. die unit mediaPLayerStretchFix habe ich genau so eingegeben, wie von Dir geschrieben. Wäre denn ein OleContainer für einen externen Player auch möglich, so wie der vcl player ? Liebe Grüsse Holger |
AW: Mediaplayer Firemonkey
Du solltest den Code in Resize aufrufen:
Delphi-Quellcode:
Sei NICHT so stur - mit dem Button macht das keinen Sinn!
procedure TForm1.FormResize(Sender: TObject);
begin if (MediaPlayer1.State = TMediaState.Playing) then TWindowsMedia (Mediaplayer1.Media).stretch; end; Wenn Du es UNBEDINGT mit dem Button machen willst: Lösche den OnResize-Eintrag und mache es so:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin FormResize(Self); end; procedure TForm1.FormResize(Sender: TObject); begin if (MediaPlayer1.State = TMediaState.Playing) then TWindowsMedia (Mediaplayer1.Media).stretch; end; |
AW: Mediaplayer Firemonkey
Keine Ahnung, wie Du darauf kommst, ich sei stur, aber egal...
Ich habe das jetzt in Resize eingegeben, der Button war ja zunächst als Versuchsobjekt gedacht, später sollte das automatisch laufen auch egal.. Leider bleibt das Bild in der Ausgangsgrösse.. Liebe Grüsse Holger |
AW: Mediaplayer Firemonkey
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin if OpenDialog1.Execute then MediaPlayer1.FileName:= OpenDialog1.Filename; MediaPlayer1.Play; FormResize(Self); end; |
AW: Mediaplayer Firemonkey
Besser
Delphi-Quellcode:
Sonst wird ein Teil des Codes auch ausgehührt wenn der Dialog abgebrochen wird.
procedure TForm1.Button1Click(Sender: TObject);
begin if OpenDialog1.Execute then begin MediaPlayer1.FileName:= OpenDialog1.Filename; MediaPlayer1.Play; FormResize(Self); end; end; |
AW: Mediaplayer Firemonkey
Typisch "Flüchtigkeitsfehler". Alles klar, danke!
|
AW: Mediaplayer Firemonkey
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:18 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