WPF Cursor类中的两个构造函数:

public Cursor(Stream cursorStream)
public Cursor(string cursorFile)

以上的构造函数所使用的的资源均是 ani 或 cur的文件,并不支持图片的方式生成。

    /// This class allow you create a Cursor form a Bitmap
/// </summary>
internal class BitmapCursor : SafeHandle
{ public override bool IsInvalid
{
get
{
return handle == (IntPtr)(-1);
}
} public static Cursor CreateBmpCursor(Bitmap cursorBitmap)
{ var c = new BitmapCursor(cursorBitmap); return CursorInteropHelper.Create(c);
} protected BitmapCursor(Bitmap cursorBitmap)
: base((IntPtr)(-1), true)
{
handle = cursorBitmap.GetHicon();
} protected override bool ReleaseHandle()
{
bool result = DestroyIcon(handle); handle = (IntPtr)(-1); return result;
} [DllImport("user32")]
private static extern bool DestroyIcon(IntPtr hIcon);
}

提供的扩展方法:

public static Bitmap BitmapSourceToBitmap(this BitmapSource source)
{
using (var stream = new MemoryStream())
{
var e = new BmpBitmapEncoder();
e.Frames.Add(BitmapFrame.Create(source));
e.Save(stream); var bmp = new Bitmap(stream); return bmp;
}
}

转自:http://www.cnblogs.com/zhouyinhui/archive/2010/05/28/1746502.html

WPF 创建自定义鼠标光标指针的更多相关文章

  1. WPF 自定义鼠标光标

    在程序中使用自定义鼠标光标的三种方式: RadioButton senderButton = sender as RadioButton; 方式一:                       str ...

  2. 在.net桌面程序中自定义鼠标光标

    有的时候,一个自定义的鼠标光标能给你的程序增色不少.本文这里介绍一下如何在.net桌面程序中自定义鼠标光标.由于.net的桌面程序分为WinForm和WPF两种,这里分别介绍一下. WinForm程序 ...

  3. 自定义鼠标光标cursor

    通过css属性 Cursor:url()自定义鼠标光标. {cursor:url('图标路径'),default;} url是自定义鼠标图标路径 default指的是定义默认的光标(通常是一个箭头), ...

  4. WPF窗体隐藏鼠标光标的方法

    原文:WPF窗体隐藏鼠标光标的方法 要引用 System.Windows.Input;   Mouse.OverrideCursor = Cursors.None; 去掉 Override 则使用: ...

  5. WPF 创建自定义窗体

    在前面的一篇博客"WPF 自定义Metro Style窗体",展示了如何创建一个类似于Metro Style的Window,并在程序中使用.但是这个窗体不能够自由的改变大小.今天的 ...

  6. 自定义鼠标光标,制作cur,设置热点,中心点。

    ..没哈好说的,,只是推荐一个软件 ArtCursor..非常好用. 关于另外一个更改光标的重要问题:鼠标的hotspot,也就是鼠标的作用点问题,本人关于这个问题纠结了很久,始终无法找到更改HCUR ...

  7. 【WPF】自定义鼠标样式

    /// <summary> /// This class allow you create a Cursor form a Bitmap /// </summary> inte ...

  8. C# winform 自定义鼠标光标

    第一种:(调用系统API)首先引入两个命名空间代码如下: using System.Runtime.InteropServices;using System.Reflection;导入API代码如下: ...

  9. [WPF]自定义鼠标指针

    原文:[WPF]自定义鼠标指针 [WPF]自定义鼠标指针 周银辉 看看WPF Cursor类的两个构造函数吧:  * f));            g.Flush();            g.D ...

  10. css Cursor:url()自定义鼠标指针样式为图片

    css自定义鼠标指针样式为图片Cursor:url()的使用,今天在项目中,要用到自定义鼠标样式,格式: css:{cursor:url('绝对路径的图片(格式:cur,ico)'),-moz-zoo ...

随机推荐

  1. 强网杯2023 谍影重重2.0 wp

    题目描述 小明是某间谍组织的一员,他终日监听着我国某重点军事基地的飞行动态,妄图通过分析参数找到我国飞的最快的飞机.我国费尽千辛万苦抓住了他,并在他的电脑上找到了一段他监听的信息,请分析出这段信息中飞 ...

  2. WebP图片使用踩坑

    前情 WebP是一种同时提供了有损压缩与无损压缩(可逆压缩)的图片文件格式,最初在2010年发布,目标是减少文件大小,相较于传统的 PNG.JPG,甚至是动图 GIF 的格式,WebP 比它们的空间更 ...

  3. Intel Pin初探

    1.在/home/hf/Desktop/pin/pin-3.30-98830-g1d7b601b3-gcc-linux/source/tools/ManualExamples/目录下写自己的pinto ...

  4. Linux行号显示

    xshell显示行号: 输入命令: vim ~/.vimrc 输入: set nu 之后在打开文件 就可以 看到行号显示.

  5. 技术实践|Hive数据迁移干货分享

    导语 Hive是基于Hadoop构建的一套数据仓库分析系统,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能.它的优点是可以通过类SQL语句快速实现简单的MapReduce统计,不 ...

  6. MySQL 优化利器 SHOW PROFILE 的实现原理

    背景 最近碰到一个 case,通过可传输表空间的方式导入一个 4GB 大小的表,耗时 13 分钟. 通过PROFILE定位,发现大部分耗时竟然是在System lock阶段. mysql> se ...

  7. 如何在 Linux 中使用 grep 命令的排除功能

    来自grep 是一种强大的命令行工具,用于在一个或多个输入文件中搜索与正则表达式匹配的行,并将匹配的行标准输出.在本文中介绍如何在使用 grep 搜索时排除一个或多个单词或目录.   排除单词或多个条 ...

  8. 对CGAL5.0及以后版本编译的说明

    CGAL5.0及以后版本只有头文件,没有库文件了.这意味着CGAL无需编译,只需安装好CGAL的依赖项即可.类似Eigen库.

  9. 是时候弃用ibSass和node-sass而采用Dart Sass了!

    背景说明 此次改动是在 Sass 核心团队进行了大量讨论之后,得出的结论,现在是时候正式宣布弃用 LibSass 和基于它构建的包(包括 Node Sass).多年来,LibSass 显然没有足够的工 ...

  10. java通过apache poi框架读取2007版Excel文件

    java系读写excel文件既可以用jxl库,也可以用POI库,但是,jxl库只支持低版本的excel2003,不支持更高版本,无法直接输出*.xlsx文件,只能输出*.xls文件,另外,更新也不频繁 ...