Stránka 1 z 1

C# - Jak zastavit hudbu zapomocí bool

Napsal: 20 kvě 2014 18:57
od SvanXYZ
Dobrý den, narazil jsem na menší problém, programuji soukromý projekt, ve kterém si jen testuji znalosti programování.

Ted k problému - přikládám část kodu.

Kód: Vybrat vše

public static int CisloHudby = 0;
public static bool HudbaHraje = true;

public static void Main()
		{
				
			Engine engine = new Engine(); //Deklarace třídy Engine
					
			Hudba();
			
			engine.Intro(); // Spustí Intro - v metode intro není hudba.
			
			Thread.Sleep(300);
			HudbaHraje = false;	
				
		}
		
		private static void Hudba()
		{
		SoundPlayer player0 = new SoundPlayer(@"c:\Allegretto.wav");
		switch (CisloHudby) {
			case 0:
				
				player0.Play();
				
				if(HudbaHraje == false){
					
				player0.Stop();
				}
								
				break;
Mím cílem bylo, že bych ovlivnoval zda hudba hraje zapomocí true/false, ale zatim to něják nesplnuje mé očekávání.

Myslím si že chybe je v deklaraci bool a že tou chybou je ono slovo "static", každopádně při odstranění vyžaduje odkaz na objekt a proto sem píšu, abych se dozvěděl jak to vyřešit.

Re: C# - Jak zastavit hudbu zapomocí bool

Napsal: 21 kvě 2014 12:36
od CZechBoY
Zdravím,
to bys musel volat znova proceduru Hudba, nikde jinde nevidím práci s přehrávačem. No navíc vidím, že v tý proceduře Hudba vytváříš novej přehrávač - takže ten už vypnout nepůjde.

Já bych si udělal objekt Prehravac a dal mu metody Hraj(), Hraj(string cesta), Hraj(int CisloHudby), Pauza(), Stop(). Je to vlastně taková abstrakce nad SoundPlayer, jen s českými metodami :D