0
我正在重写一个Windows窗体应用程序(更新后的框架,重写了逻辑等),还有一件事是我无法弄清楚他们是如何做的。 在原始应用程序中的文本框有一个像这样厚的闪烁光标:http://screencast.com/t/8QYUcjuh3nWindows窗体:如何在文本框上使用粗闪烁的光标?
对于我的生活,我无法想象如何做到这一点。请帮忙?
我正在重写一个Windows窗体应用程序(更新后的框架,重写了逻辑等),还有一件事是我无法弄清楚他们是如何做的。 在原始应用程序中的文本框有一个像这样厚的闪烁光标:http://screencast.com/t/8QYUcjuh3nWindows窗体:如何在文本框上使用粗闪烁的光标?
对于我的生活,我无法想象如何做到这一点。请帮忙?
你可以的PInvoke CreateCaret
的例子使用一个WinForm一个按钮(按钮1)和文本框(textBox1中)做到这一点。
添加此使用指令:
using System.Runtime.InteropServices;
添加这些声明:
[DllImport("user32.dll")]
static extern bool CreateCaret(IntPtr hWnd, IntPtr hBitmap, int nWidth, int nHeight);
[DllImport("user32.dll")]
static extern bool ShowCaret(IntPtr hWnd);
这个代码添加到按钮单击事件:
// Thickness is set where I have 10.
CreateCaret(textBox1.Handle, IntPtr.Zero, 10, textBox1.Height);
ShowCaret(textBox1.Handle);
当您点击按钮”会得到一个更粗的光标。
还有关于这个here的讨论。
真棒谢谢...现在我知道要搜索什么,我看他们是如何调用这个。其实......这是一个肯定的日常WF赢家 – 2009-05-21 18:30:45