如何在窗体相对而不是屏幕相对中获取鼠标位置?

时间:2013-07-08 09:02:30

标签: c# winforms mouse

我想首先说明我在C#中的“技巧Z”是相当基本的。

因此,我正在尝试向tooltip中的所选项目添加listbox,这会在用户点击相关项目时发生。

所以我的询问是否我对PointToClient的使用是正确的,因为我认为存在问题所在。或者我完全错了(可能就是这种情况)?

    public void Listb_SelectedIndexChanged(object sender, EventArgs e)
    {

        ToolTip tooltip = new ToolTip();
        ListBox temp = sender as ListBox;
        Point mouseLocation = Control.MousePosition;
        Form.ActiveForm.PointToClient(mouseLocation);
        int idx = (int)temp.Tag;
        tooltip.Show(DaysList[idx].Elements[temp.SelectedIndex].EventDate, temp, mouseLocation);
    }

提前致谢。

1 个答案:

答案 0 :(得分:1)

由于工具提示位置是指show()构造函数中的输入控件,因此您无需关心主窗体位置。只需跳过“PointToClient”部分就可以了,你会没事的!