如此有趣的进退两难,我设法使一个标签完全不可见,在那里我可以使用它在图片的某些部分的点击事件。
然后,我使用这个单击事件调用另一个picturebox,使用picturebox3.visual= true.
我遇到的问题是,当它调用来自新picturebox (不可见标签)的picturebox visibility..the控件时,它在picturebox2中似乎无法正常工作或完全丢失。
我需要用大约30个不同的图片来创建一个“仿真器”项目的人。
对此有什么想法吗?如果需要的话我可以贴密码。Picturebox +控制picturebox =头疼。
Public Class InvisibleLabel
Inherits Label
Public Sub New()
Me.SetStyle(ControlStyles.Opaque, True)
Me.SetStyle(ControlStyles.OptimizedDoubleBuffer, False)
End Sub
Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams
Get
Dim CC As CreateParams = MyBase.CreateParams
CC.ExStyle = CC.ExStyle Or &H20
Return CC
End Get
End Property端级
这是不可见标签的代码,然后,当单击图片的某些部分时,我只使用picturebox2.visual= true。
发布于 2014-05-13 02:24:59
我做了3个文本框
textbox1表示X‘只是为了让你看到
textbox2代表Y‘只是为了让你看到
和
CurPicture用于比较当前图像
我的画盒是300,300
私有子PictureBox1_MouseClick(发送方作为对象,e作为MouseEventArgs)处理PictureBox1.MouseClick
Dim LocX As Integer = e.X
Dim LocY As Integer = e.Y
TextBox1.Text = e.X.ToString
TextBox2.Text = e.Y.ToString
If LocX > 200 Then ' click right side op the picture , change LocX With LocY to make it bottom
If CurPicture.Text = "1" Then
PictureBox1.Image = My.Resources.Pic2
CurPicture.Text = "2"
ElseIf CurPicture.Text = "2" Then
PictureBox1.Image = My.Resources.Pic3
CurPicture.Text = "3"
ElseIf CurPicture.Text = "3" Then
PictureBox1.Image = My.Resources.Pic4
CurPicture.Text = "4"
ElseIf CurPicture.Text = "4" Then
PictureBox1.Image = My.Resources.Pic5
CurPicture.Text = "5"
ElseIf CurPicture.Text = "5" Then
PictureBox1.Image = My.Resources.Pic1
CurPicture.Text = "1"
End If
End If
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
PictureBox1.Image = My.Resources.Pic1
CurPicture.Text = "1"
End Sub希望这能帮你上路:)
发布于 2014-05-10 02:43:35
使用:
Private Sub PictureBox_MouseDown(sender As Object, e As MouseEventArgs) _
Handles PictureBox.MouseDown
'The code to change the picture goes here
End Subhttps://stackoverflow.com/questions/23572450
复制相似问题