如果Rectangle不包含鼠标位置

时间:2014-08-18 21:55:39

标签: windows mouse-position

我有一个矩形,我可以用下面的命令触摸。

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(); 
    }
}

我的问题是,如果我点击矩形,music1和music2同时播放,我希望当我点击仅播放music1的矩形时(这是问题,两者都开始播放),当我点击时Rectangle应该只启动music2播放(这种情况可以)

1 个答案:

答案 0 :(得分:0)

我强烈建议您购买编程书籍/电子书并开始阅读。这是基本的计算机逻辑。

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

OR

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