如何以相对形式而不是屏幕相对形式获取mousePosition

本文关键字:相对 屏幕 获取 mousePosition | 更新日期: 2023-09-27 18:21:21

我想首先说明我在C#中的"skillZ"是相当基础的。

因此,我正在尝试将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);
    }

提前谢谢。

如何以相对形式而不是屏幕相对形式获取mousePosition

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