Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
他の色で囲まれた部分を塗りつぶす
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=10945#CommentId24105
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
viajar
 (その他)
投稿日時
2012/7/3 14:02:34
ピクチャーボックスに表示されている画像をクリックすると
クリックしたところを(他の色で囲まれた部分まで)塗りつぶすようにするにはどうすればいいのでしょうか?
とりあえず色々調べてみてここまでは何とかできたのですが、
特にExtFloodFillのhdcの部分に何を指定すればいいのかわかりません。
ちなみにピクチャーボックスの名称はmapで、panelという名称のパネルの上にピクチャーボックスを設置しています。
使用するかどうかわからない部分はコメントアウトしています。
Public Class main
Private Declare Function ExtFloodFill Lib "gdi32" _
(ByVal hdc As IntPtr, _
ByVal X As Integer, _
ByVal Y As Integer, _
ByVal crColor As Integer, _
ByVal wFillType As UInteger) As Boolean
Private Sub main_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
opendialog.FileName = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly.Location) & "\map.png"
If My.Computer.FileSystem.FileExists(opendialog.FileName) Then
Dim bmp As Bitmap
bmp = Image.FromFile(opendialog.FileName)
map.Image = bmp
End If
End Sub
Private Sub map_Click(sender As System.Object, e As System.EventArgs) Handles map.Click
'この辺がよくわからない
'Dim bmp As Bitmap = map.Image
'Dim hdc As IntPtr = map.Handle
'Dim brs As Brush = Brushes.GreenYellow
Dim p As New Point
p = Me.PointToClient(Windows.Forms.Cursor.Position)
p.X -= map.Left
p.Y -= map.Top
'ExtFloodFill(hdc, p.X, p.Y, RGB(255, 0, 0), 0)
End Sub
End Class