2011-04-28 90 views
-1

我有一個能夠播放和停止waf文件的按鈕。 在處理程序按鈕的方法,我有c#播放停止wav文件

if (button.Text="play") 
{ 
..filepath of the wav file 
wav.play(); 
button.txt="stop" 
} 
else{ 
wav.stop();  
button.Text="play" 
} 

但當調試那張否則WAV是空的,所以我有一個空exception.where我錯了?

+1

什麼是'wav'?它在哪裏定義和初始化?請發佈更多代碼。 – 2011-04-28 11:56:44

+0

你能否提供完整的buttin點擊處理程序代碼? – 2011-04-28 11:57:03

+0

添加初始化wav對象的代碼。除此之外,請在調用play()之前檢查wav對象是否不爲null – Yanshof 2011-04-28 11:57:21

回答

1

你在else情況下給出wavv而不是wav,所以它可能會使它爲空。

1

嘗試這樣做,

if (button.txt="play") 
    { //..filepath of the wav file 
     if(wav != null) 
     {   
     wav.play(); 
     button.txt="stop"; 
     } 
    } 
    else 
    { 
     if(wav != null) 
     { 
    wav.stop(); //replaced wavv to wav 
    button.txt="play" 
    } 
} 
0

在你的代碼,它看起來像你的聲明,並在IF部分, 所以不會在其他部分可初始化WAV。你應該在if ... else 之外聲明wav,然後使用wav.stop();

//declare wav variable here 
    if (button.Text="play") 
    { 
     if(wav != null) 
     {   
     //filepath of the wav file 
     wav.play(); 
     button.txt="stop"; 
     } 
    } 
    else{ 
     if(wav != null) 
     { 
     wav.stop(); 
     button.txt="play"; 
     } 
    } 

我認爲這將有助於你...