あなたがPInvokeのCreateCaret
の例では、ボタン(ボタン1)とテキストボックス(textBox1テキストボックス)とのWinフォームを使用してそれを行うことができます。
[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);
ボタンあなた」をクリックすると
using System.Runtime.InteropServices;
は、これらの宣言を追加します。
はこのusingディレクティブを追加します。より厚いカーソルを得るでしょう。
また、hereについての議論もあります。
すごくおかげさま...私は検索するものを知っているので、私は彼らがこれをどのように呼び出すか見る。実際には...これは確かに毎日WTFの勝者です –
問題ありません。残念ながら私のために私のWTFは毎日以上です! –
実際には、私はこれに問題がある、それはコントロールハンドルとフォームが異なるスレッドで作成されるように思われる。したがって、クロススレッド例外を発生させます。 –