Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Sound abspielen bei wechseln des Tabs einer PageControl ? (https://www.delphipraxis.net/167879-sound-abspielen-bei-wechseln-des-tabs-einer-pagecontrol.html)

Premaider 23. Apr 2012 16:56

Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Hey Leute, ich habe mir ein Programm erstellt bei dem es eine PageControl gibt. Diese hat insgesammt 5 Tabs. Ich möchte jetzt folgendes:

Aufrufen von Tab1 = Sound1 abspielen
Aufrufen von Tab2 = Sound2 abspielen
Aufrufen von Tab3 = Sound3 abspielen
Aufrufen von Tab4 = Sound4 abspielen
Aufrufen von Tab5 = Sound5 abspielen

Die Sounds befinden sich in folgenden Verzeichnissen:
C:\Programm Files\Premaider\Livestreamtool\Sound1.wav
C:\Programm Files\Premaider\Livestreamtool\Sound2.wav
C:\Programm Files\Premaider\Livestreamtool\Sound3.wav
C:\Programm Files\Premaider\Livestreamtool\Sound4.wav
C:\Programm Files\Premaider\Livestreamtool\Sound5.wav

Wie mache ich das ? Ich habe gehört das soll mit einem TMediaPlayer funktionieren, doch
damit habe ich es nicht hinbekommen. Bin einfach noch ein zu großer Anfänger. Der TMediaPlayer soll dabei nicht sichtbar sein.

LG

Popov 23. Apr 2012 17:13

AW: Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Delphi-Quellcode:
uses mmSystem


      if FileExists(FilePath) then
        //SndPlaySound(PAnsiChar(FilePath), SND_ASYNC );
        PlaySound(PChar(FilePath), hInstance, SND_ASYNC or SND_FILENAME);

DeddyH 23. Apr 2012 17:16

AW: Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Ungetestet:
Delphi-Quellcode:
const
  SOUNDDIR = 'C:\Programm Files\Premaider\Livestreamtool\';
 
procedure TDeinForm.PageControlChange(Sender: TObject);
var
  SoundFile: string;
begin
  case PageControl.ActivePageIndex of
    0:
      SoundFile := 'Sound1.wav';
    1:
      SoundFile := 'Sound2.wav';
    2:
      SoundFile := 'Sound3.wav';
    3:
      SoundFile := 'Sound4.wav';
    4:
      SoundFile := 'Sound5.wav';
    else
      SoundFile := '';
  end;
  if SoundFile <> '' then
    PlaySound(PChar(SOUNDDIR + SoundFile), 0, SND_FILENAME or SND_ASYNC);  
end;

Premaider 23. Apr 2012 17:25

AW: Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Zitat:

Zitat von DeddyH (Beitrag 1163233)
Ungetestet:
Delphi-Quellcode:
const
  SOUNDDIR = 'C:\Programm Files\Premaider\Livestreamtool\';
 
procedure TDeinForm.PageControlChange(Sender: TObject);
var
  SoundFile: string;
begin
  case PageControl.ActivePageIndex of
    0:
      SoundFile := 'Sound1.wav';
    1:
      SoundFile := 'Sound2.wav';
    2:
      SoundFile := 'Sound3.wav';
    3:
      SoundFile := 'Sound4.wav';
    4:
      SoundFile := 'Sound5.wav';
    else
      SoundFile := '';
  end;
  if SoundFile <> '' then
    PlaySound(PChar(SOUNDDIR + SoundFile), 0, SND_FILENAME or SND_ASYNC);  
end;

Habe das ganze an mein Programm angepasst und es startet auch normal, doch wenn ich jetzt den Tab wechsle dann ertönt nur ein kurzes "beep" anstatt dem gewünschten Sound.

DeddyH 23. Apr 2012 17:30

AW: Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Dann lass Dir doch mal SOUNDDIR + SoundFile ausgeben und schau, ob es die Datei tatsächlich gibt.
Zitat:

SND_FILENAME
The pszSound parameter is a file name. If the file cannot be found, the function plays the default sound unless the SND_NODEFAULT flag is set.

Gustav.R 23. Apr 2012 17:48

AW: Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Bei Leerzeichen im Dateipfad emfehle ich Gänsefüßchen drumherum :thumb:

GG

DeddyH 23. Apr 2012 17:57

AW: Sound abspielen bei wechseln des Tabs einer PageControl ?
 
Die sind hier nicht nötig (zumindest auf meinem Rechner, gerade ausprobiert).


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