- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- LordAthis: Ismét egy "Idióta" A.I. Projekt, hogy meglovagolja az aktuális trendeket...
- Geri Bátyó: Agglegénykonyha 1 – rizseshús másképp
- bambano: Bambanő háza tája
- Kalacskepu: Elrontott Radeon X1950 Pro megjavítása
- sziku69: Fűzzük össze a szavakat :)
- GoodSpeed: Bye PET Palack, hello SodaStream
- talmida: Változások
- 25
Új hozzászólás Aktív témák
-
trisztan94
őstag
Sziasztok!
MediaElement-el bénázok. Egy animáció közepén szeretnék lejátszani egy távoli serveren lévő mp3 fájlt, de fontos,hogy az animáció csak akkor lépjen tovább, ha vége az mp3nak.
VisualStateManager-rel csináltam az animációkat, ezek a State-ek vannak
SlideIn
SlideOutAz lenne a terv, hogy miután beúszott a UI elem, de még mieltt kiúszott volna játszom le a hangot.
De most jön a csavar: nem is egy, de kettő hangot szeretnék lejátszani egy bizonyos sorrenben. Először lejátszani az elsőt, ha az végigment lejátszani a másodikat, és ha az is befejeződött, elindítani a SlideOut animációt.
Valószínűleg nagyon nagy hülyeséggel próbálkoztam:
Létrehoztam két MediaElementet XAML-ben: media1, media2
Itt a code behind:
private async void play1(int i)
{
Dispatcher.BeginInvoke(() =>
{
media1.Source = new Uri(string.Format("{0}m{1}hu_HU.mp3", mp3HostName, sentences[i].id), UriKind.Absolute);
media1.MediaOpened += (object arg1, RoutedEventArgs arg2) =>
{
media1.Play();
};
});
}
private async void play2(int i)
{
Dispatcher.BeginInvoke(() =>
{
media2.Source = new Uri(string.Format("{0}m{1}en_US.mp3", mp3HostName, sentences[i].id), UriKind.Absolute);
media2.MediaOpened += (object arg1, RoutedEventArgs arg2) =>
{
media2.Play();
};
});
}
private async void Animate()
{
VisualStateManager.GoToState(this, "SlideIn", true);
Task taska = Task.Factory.StartNew(()=>play1(i));
await taska;
if(taska.IsCompleted)
{
Task taskb = Task.Factory.StartNew(() => play2(i));
await taskb;
if(taskb.IsCompleted)
{
VisualStateManager.GoToState(this, "SlideOut", true);
}
}
}Viszont mivel írok ide, kitalálható, hogy nagyon nem múködik. De úgy nagyon nagyon nem.
Hogyan kell ezt normálisan véghezvinni?
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HIBÁTLAN iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3022
- Olcsó Notebook! Lenovo Ideapad 3! Ryzen 3 3250U / 8GB DDR4 / 128GB SSD
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- ÚJ Microsoft Surface Laptop 7 13.8" 2K - 120Hz Érintő - Snapdragon X Elite - 16GB - 512GB-2 év gari
- HIBÁTLAN iPhone XS 64GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3030, 100% Akkumulátor
Állásajánlatok
Cég: FOTC
Város: Budapest