![]() |
Repeat Funktion
Hallo,
Ich versuche gerade meinem Programm einen Hintergrundsound zuverpassen. Es soll eigentlich immer der gleiche sein und sich ständig wiederholen. Im Moment habe ich den so programmiert Mediaplayer,dass er beim start sofort aktiviert wird, unsichtbar ist . Eigentlich geht er schon, bis auf, dass er nicht das Lied wiederholt. Danke schonmal im Voraus und bitte möglichst einfache Antworten, weil ich erst seit 1 Woche Erfahrungen mit programmieren habe. |
Re: Repeat Funktion
Als Alternative zum Media-Player kann ich dir anbieten, den Hintergrundsound als Ressource in dein Programm einzubinden und einfach so abzuspielen:
Delphi-Quellcode:
Um die Datei hintergrund.res aus einer MP3-Datei zu machen, kannst du
{$R hintergrund.res}
procedure Hintergrundklang(AnAus: boolean); begin if AnAus then PlaySound('BACKGROUND', hInstance, SND_ASYNC or SND_LOOP or SND_RESOURCE) else PlaySound(nil, hInstance, 0); end; ![]() |
Re: Repeat Funktion
Komischerweise erhält man aber dann diesen Fehler:
[Fehler] E2161 RLINK32: Too many resources to handle. |
Re: Repeat Funktion
Hast du überhaupt eine Ressource eingebunden? Und wenn ja, dann entferne kurz die Direktive zum Einbinden, kompiliere, und dann schreib sie wieder rein.
|
Re: Repeat Funktion
"Direktive zum Einbinden"? :gruebel: ,Ressource?
|
Re: Repeat Funktion
{$R hintergrund.res} ist die Direktive und die Ressource solltest du schon einbinden, denn er kann ja nicht abspielen, was nicht da ist ;)
air |
Re: Repeat Funktion
hintergrund.res hatte ich probiert und drin, aber was für ne ressource?- was muss man da eintippen?
|
Re: Repeat Funktion
Hast du die Datei hintergrund.res denn auch erstellt?
Was für Ressourcen sind denn da drin? Hier eine Anleitung für das Tool von mir: 1. Tool starten 2. MP3-Datei per Drag&Drop aus dem Explorer draufziehen 3. Den Button "Convert to wave / res" klicken 4. Dort die Option "(*) Convert to RES file" aktivieren 5. Bei "Name" einen Namen ausdenken und merken (hier: hintergrund) 6. Bei "Filename" dein Projektverzeichnis plus hintergrund.res auswählen 7. Den "OK"-Button klicken Dann hast du eine Ressourcendatei hintergrund.res, die du mit {$R hintergrund.res} in dein Programm einbinden kannst. |
Re: Repeat Funktion
Vielen Dank für deine Bemühungen aber irgendwie scheint es, obwohl ich alles so gemacht habe immer noch nicht zu Funtionieren (mein Code:)
Delphi-Quellcode:
unit Unit2;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm2 = class(TForm) procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form2: TForm2; implementation {$R *.nfm} {$R hintergrund.res} procedure TForm2.FormCreate(Sender: TObject); begin end; procedure Hintergrundklang(AnAus: boolean); begin if AnAus then PlaySound('hintergrund', hInstance, SND_ASYNC or SND_LOOP or SND_RESOURCE) else PlaySound(nil, hInstance, 0); end; end. PlaySound, hinstance etc, streicht Delphi rot an! Die Datei hintergrund.res befindet sich im Verzeichnis. |
Re: Repeat Funktion
Für PlaySound brauchst du MMSystem in der uses-Liste. So etwas findest du leicht, indem du einfach den Cursor auf PlaySound positionierst und F1 drückst bzw. in der Hilfe über den Index nach PlaySound suchst.
Nachtrag: Ich sehe gerade das {$R *.nfm} - dein Projekt ist ein VCL.NET-Projekt? Dann vergiss bitte alles, was ich bisher geschrieben habe... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 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 by Thomas Breitkreuz