Visual Basic サンプル集 |
Visual Basic 中学校 > Visual Basic サンプル集 > Visual Basic サンプル集目次 > Windows フォーム >
マウスカーソルを独自のものにする
2022/1/30
この記事は Windows フォーム アプリ を対象にしています。
目次
マウスカーソルを動的に描画する
Const size As Integer = 64
Using bmp As New Bitmap(size, size)
'▼グラフィックを描画(この段階ではメモリ上で描画され、どこにも表示されません。)
Using g As Graphics = Graphics.FromImage(bmp)
g.Clear(Color.Transparent) '背景を透明にする
g.DrawEllipse(Pens.Red, 0, 0, size - 1, size - 1)
g.DrawRectangle(Pens.Black, 0, 0, size - 1, size - 1)
g.DrawString("✈", New Font(Me.Font.FontFamily, 20), Brushes.Orange, 0, 0)
End Using
'▼描画したグラフィックをマウスカーソルに設定
Me.Cursor = New Cursor(bmp.GetHicon)
End Using
メモ:通常のマウスカーソルに戻す方法は、Me.Cursor = Cursors.Default です。
.icoファイル・.curファイルを読み込んでカスタムなマウスカーソルを表示する
前提:この例を実行するには C:\temp\original.cur という名前でマウスカーソルファイル(ポインターファイル)が存在している必要があります。
Dim myCursor As New Cursor("C:\temp\original.cur")
Me.Cursor = myCursor
メモ:icoファイルはインターネットなどで有志が作成されたものが公開されています。「Windows アイコン ダウンロード」などで検索すると見つけられます。
メモ:オリジナルのアイコンを作成するソフトもあります。Visual Studio でも[ファイル] - [新規作成] - [ファイル] - [アイコンファイル]で .ico ファイルを作成できます。
メモ:curファイルはインターネットなどで有志が作成されたものが公開されています。「マウスカーソル ダウンロード」などで検索すると見つけられます。
メモ:オリジナルのマウスカーソルを作成するソフトもあります。Visual Studioでも[ファイル] - [新規作成] - [ファイル] - [カーソルファイル]で .cur ファイルを作成できます。
メモ:拡張子 .ani のアニメーションカーソルはこの方法では読み込めません。
PNG や GIF や JPEG を読み込んでカスタムなマウスカーソルとして表示する
前提:この例を実行するには C:\temp\original.png という名前で画像ファイルが存在している必要があります。
Const size As Integer = 64
Using bmp As New Bitmap(size, size)
'▼画像を描画(この段階ではメモリ上で描画され、どこにも表示されません。)
Using g As Graphics = Graphics.FromImage(bmp)
Using img = Image.FromFile("C:\temp\original.png")
g.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
g.DrawImage(img,
New Rectangle(0, 0, size, size),
New Rectangle(0, 0, img.Width, img.Height),
GraphicsUnit.Pixel)
End Using
End Using
'▼描画したグラフィックをマウスカーソルに設定
Me.Cursor = New Cursor(bmp.GetHicon)
End Using
メモ:通常のマウスカーソルに戻す方法は、Me.Cursor = Cursors.Default です。