2014-01-24 1 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

디버깅을 시도 했습니까? 버튼이 연결되어 있습니까? 대답이 예이면 SendToBack() 및 BringToFront()를 사용하는 대신 Visibility를 true 또는 false로 설정하십시오. –

+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