-1

以下のコマンドで触れることができる Rectangle があります。

if ((mouse.LeftButton == ButtonState.Pressed )&&
        TextureRectangle.Contains((int)MousePos.X,(int)MousePos.Y))
{
    // Action;
}

しかし、「Not Contains」のようなコマンドがあるので、ユーザーが「TextureRectangle」領域の外に触れた場合、何か他のことをしたいですか?

Rectangle をクリックすると、両方のアクションが開始されます。どこに問題があるのか​​ 本当にわかりません。

if (mouse.LeftButton == ButtonState.Pressed){
    if(TextureRectangle.Contains((int)MousePos.X, (int)MousePos.Y)) {
        music1.Play();
    } 
    else{
        music2.Play(); 
    }
}

私の問題は、Rectangle をクリックすると music1 と music2 が同時に再生されることです。Rectangle をクリックすると music1 のみが再生され (ここに問題があり、両方が再生を開始します)、Rectangle の外をクリックすると再生されます。再生するには music2 のみを開始する必要があります (この場合は問題ありません)

4

1 に答える 1

0

プログラミング本/電子ブックを入手して読み始めることを強くお勧めします。これは基本的なコンピューターロジックです。

if (mouse.LeftButton == ButtonState.Pressed)
{
    if (TextureRectangle.Contains((int)MousePos.X, (int)MousePos.Y))
    {
        // inside
    }
    else
    {
        // outside
    }
}

また

if (mouse.LeftButton == ButtonState.Pressed)
{
    if (!TextureRectangle.Contains((int)MousePos.X, (int)MousePos.Y))
    {
        // outside
    }
    else
    {
        // inside
    }
}
于 2014-08-18T22:18:38.697 に答える