I see what the problem was: the button location relative to the PictureBox location.
One approach is to first add a Panel, then insert a PictureBox inside the Panel and dock in parent container.
In the form load tie button.Parent to PictureBox.
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Button1.Parent = PictureBox1
Button2.Parent = PictureBox1
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
MessageBox.Show("Form #3")
End Sub
Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click
MessageBox.Show("Form #3 butn 2")
End Sub
The other approach without the Panel, only PictureBox and buttons: directly control the buttons location relative the picture location:
Private Sub Form4_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Button1.Parent = PictureBox1
Button2.Parent = PictureBox1
Button1.Location = PictureBox1.PointToClient(Me.PointToScreen(Button1.Location))
Button2.Location = PictureBox1.PointToClient(Me.PointToScreen(Button2.Location))
End Sub
and button control appearance:
Button2.FlatStyle = FlatStyle.Flat
'Button2.FlatAppearance.BorderSize = 0
Button2.FlatAppearance.MouseDownBackColor = Color.FromArgb(0, 255, 255, 255)
Button2.FlatAppearance.MouseOverBackColor = Color.FromArgb(0, 255, 255, 255)
'Button2.FlatAppearance.BorderColor = Color.FromArgb(0, 255, 255, 255)
Button2.BackColor = Color.FromArgb(0, 255, 255, 255)