這是我在這個論壇上的第一個問題。我是法國學生,對我的英語很抱歉。在我的代碼中,我想從Dispatcher.BeginInvoke.
中提取一個值。這是我的代碼中有問題的部分。如何檢索WPF/C中的Dispatcher.BeginInvoke的值#
public partial class Jouer : Window
{
// private Timer timer_creer_obstacle;
private Timer timer_personnage_chute;
private Timer timer_obstacles_avance;
private Personnage perso;
private Decor decor;
public Jouer()
{
InitializeComponent();
perso = new Personnage("canard-de-bain.png", World);
decor = new Decor(World);
// Timer qui gère l'avancé des obstacles
timer_obstacles_avance = new Timer();
timer_obstacles_avance.Enabled = true;
timer_obstacles_avance.Interval = 60;
timer_obstacles_avance.Elapsed += timer_obstacles_avance_event;
timer_obstacles_avance.AutoReset = true;
// Timer qui gère la chute du personnage
timer_personnage_chute = new Timer();
timer_personnage_chute.Enabled = true;
timer_personnage_chute.Interval = 60;
timer_personnage_chute.Elapsed += timer_personnage_chute_event;
timer_personnage_chute.AutoReset = true;
}
public void timer_personnage_chute_event(object sender, ElapsedEventArgs e)
{
perso.Dispatcher.BeginInvoke(// Dispatcher pour utiliser le multithearding
DispatcherPriority.Normal,
new Action(() =>
{
perso.Chuter();
perso.WorlFarmeCollision();
}));
這裏是代碼WorldFarmeCollision
,返回我一個布爾。
public bool WorlFarmeCollision()
{
if (this.Y >= 350 || this.Y <= 0)
{
App.Current.Shutdown();
return true;
}
else
return false;
}
我想perso.WordFarmeCollision
在我Jouer
類可返回一個值。
感謝您的回答。
謝謝您非常有用和快速的解答, 我用你slolution和它完美的作品! 再次感謝 –