2014-01-24 25 views
1

我已經得到了代碼,並且看起來都是正確的,我已經審查了它,並且似乎不可能找出爲什麼按鈕沒有按照其編碼做的事情做。我正在製作一個音樂播放器,當我按下播放按鈕時,它會被髮送到後面,暫停按鈕將變得可見,當我點擊暫停按鈕時,什麼也沒有發生,它的主要功能將一起停止工作。這是人們要檢查的代碼。需要向前和向後發送兩個按鈕

private void btnPlay_Click(object sender, EventArgs e) 
{ 
    try 
    { 
     if (_mp3Player != null) 
      _mp3Player.Play(); 

     btnPlay.SendToBack(); 
     btnPause.BringToFront(); 
    } 
    catch (Win32Exception ex) 
    { 
     MessageBox.Show(ex.Message); 
    } 
} 

private void btnPause_Click(object sender, EventArgs e) 
{ 
    if (_mp3Player != null) 
     _mp3Player.Stop(); 

    btnPause.SendToBack(); 
    btnPlay.BringToFront(); 
} 
+1

可能太明顯了 - 但是檢查了暫停按鈕OnClick連接到'btnPause_Click(...)'? – Jonny

+0

您是否嘗試過調試?按鈕連接了嗎?如果答案爲是,則嘗試將可見性設置爲true或false,而不是使用SendToBack()和BringToFront()。 –

+0

@Jonny工作過一次,謝謝:)一直忘記檢查我的活動是否有線 – TheLancashireCat

回答

2

也許最好是使用可視性?

private void btnPause_Click(object sender, EventArgs e) 
    { 
     if (_mp3Player != null) 
     { 
      _mp3Player.Stop(); 
     } 
     btnPause.Visible = False; 
     btnPlay.Visible = True; 
    } 

甚至是啓用的屬性?

... btnPause.Enabled = false; ...

但是我覺得你可以通過讓它成爲相同的按鈕,使用一個值來使它更好,所以如果它是播放器或假,如果它是暫停,然後在對該值單擊事件檢查以確定它當前的內容,然後執行相關功能並更改按鈕上的文本或圖像。

+0

謝謝!可見性似乎不起作用,並且兩個按鈕都變得不可見,但我想嘗試在按鈕中使用兩種功能,並在之前使用的方法不起作用,但這聽起來很安全,因此可以嘗試一下: ) – TheLancashireCat

+0

一定要讓我張貼 - 如果你需要幫助,只要問,如果是答案,不要忘記標記它:D – JonE

相關問題