在WPF中自定义光标定位

时间:2015-02-19 15:59:04

标签: c# wpf

我正在尝试更改自定义光标的位置。自定义光标的图像总是显示在我想要的位置的右​​下方,特别是如果我将它显示在我的控件的左上角 - 我希望图标显示在左上角区域。 如何更改自定义光标的WPF中的绘制位置。

我目前只在xaml中加载Cursor,并在Adorner中使用它。理想情况下,根据控件的左上角/右上角/左下角/右下角是否改变光标位置是一个简洁的解决方案。

与此相关,在旋转控件时,也能够在运行时旋转光标也是一件好事。

1 个答案:

答案 0 :(得分:2)

热点,或点击点'光标文件本身内置游标,这就决定了光标的其余部分相对于你点击的部分的位置。

通常,在.cur文件中,热点的位置以字节0a0c存储。标准系统指针的值为0000,将热点放在左上角。

我创造了' cross-hair'过去使用热点直接位于中心的游标,因此0a0c的值为1010(16和16十进制,因为我正在制作一个32x32 px游标)。

为了模拟光标的旋转,您实际上需要具有不同热点的不同.cur文件,您可以根据情况需要在代码中进行切换。

大多数游标创建工具应该允许您在创建文件时指定热点。我过去使用过IcoFX,这样可以很容易地放置热点(2次点击)。