Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: PictureBox как в Paint`e Добавлено: 02.12.03 15:08  

Автор вопроса:  Crusty

Кто нибудь знает, как программно сделать регулируемые границы окна PictureBox как в Paint`e?

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 NeForm@t



ICQ: 252999255 

Вопросов: 36
Ответов: 247
 Web-сайт: g--k.newmail.ru
 Профиль | | #1
Добавлено: 02.12.03 15:16

А именно, чтобы можно было мышкой двигать?

Ответить

Номер ответа: 2
Автор ответа:
 Crusty



Вопросов: 3
Ответов: 6
 Профиль | | #2 Добавлено: 02.12.03 15:22

Да, как в Paint за синие квадратики по бокам.

Ответить

Номер ответа: 3
Автор ответа:
 NeForm@t



ICQ: 252999255 

Вопросов: 36
Ответов: 247
 Web-сайт: g--k.newmail.ru
 Профиль | | #3
Добавлено: 02.12.03 15:30

Скоро будет пример!

Ответить

Номер ответа: 4
Автор ответа:
 NeForm@t



ICQ: 252999255 

Вопросов: 36
Ответов: 247
 Web-сайт: g--k.newmail.ru
 Профиль | | #4
Добавлено: 02.12.03 16:38

Вот навалял, на форму кинь picturebox - p1, picturebox p index=0

 

Private Type typ
Index As Integer
mousdown As Integer
End Type
Private p2 As typ
Private Sub Form_Load()
p2.Index = 0
p2.mousdown = 0
Load P(1)
Load P(2)
For i = 0 To 2
P(i).BorderStyle = 0
P(i).BackColor = &H8000000D
P(i).Width = 90
P(i).Height = 90
P(i).Visible = True
Next i
ref
End Sub
Sub ref()
P(0).Move p1.left + p1.Width - 40, p1.Top + p1.Height \ 2
P(1).Move p1.left + p1.Width \ 2, p1.Top + p1.Height - 40
P(2).Move p1.left + p1.Width - 40, p1.Top + p1.Height - 40
End Sub
Private Sub P_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
If p2.mousdown <> 1 Then
p2.Index = Index
p2.mousdown = 1
End If
End Sub
Private Sub P_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
If p2.mousdown = 1 Then
 If p2.mousdown = 1 Then
 If p2.Index = 0 Then
 P(p2.Index).Move P(p2.Index).left + X
 p1.Width = P(p2.Index).left - p1.left + 40
  ElseIf p2.Index = 1 Then
 P(p2.Index).Move P(p2.Index).left, P(p2.Index).Top + Y
 p1.Height = P(p2.Index).Top - p1.Top + 40
  Else
 P(p2.Index).Move P(p2.Index).left + X, P(p2.Index).Top + Y
 p1.Height = P(p2.Index).Top - p1.Top + 40
 p1.Width = P(p2.Index).left - p1.left + 40
 End If
 ref
End If
 End If
End Sub
Private Sub P_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
p2.mousdown = 0
End Sub

 

 

'Govnuk

Ответить

Номер ответа: 5
Автор ответа:
 Crusty



Вопросов: 3
Ответов: 6
 Профиль | | #5 Добавлено: 03.12.03 14:57

Классно, спасибо!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам