1

我正在尝试使用户可以通过单击richtexbox所在的窗口并拖动鼠标来滚动richtextbox。不幸的是,我还没有走得很远:

private void Main_PreviewMouseMove(object sender, MouseEventArgs e)
{
    if (e.LeftButton == MouseButtonState.Pressed)
    {

    }
}

我在网上看到了一些建议来跟踪鼠标的最后几个 x,y 坐标,并在每次触发鼠标移动事件时将它们与 x,y 坐标进行比较。有没有更简单的方法来做到这一点?

4

1 回答 1

2

据我所知没有。除非您使用为您处理它的 API,否则您必须手动跟踪信息。即使您确实使用了仅用于鼠标拖动的 API,它也会自己进行存储,并且可能只是传回当前的 X 和 Y,以及 X 和 Y 的差异,因为 API 不知道您想要做什么与信息。

您将处理更少的信息,但只需节省大约 5 行左右的代码即可获得相同的结果。

于 2010-02-22T01:21:48.507 回答