Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: редактор изображений - crop Добавлено: 31.01.07 10:47  

Автор вопроса:  AlexDerS
Делаю очень-очень простой редактор изображений.
Основная функция - кадрирование изображения (crop).
Как можно сделать такой инструмент?

Описание: рамка (прямоугольник) с динамически изменяемыми размерами (растягивание, сжатие; все действия - мышкой).
Инструмнт похож на:
В ACDSee - crop
B Photoshop - "рамка"

как его сделать?

Visual Basic 2005 Express Edition

Ответить

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

Номер ответа: 1
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #1
Добавлено: 31.01.07 13:02
с помощью gdi+ ессно,)

Ответить

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



ICQ: 42305746 

Вопросов: 2
Ответов: 67
 Web-сайт: alexander.tsioka.ru
 Профиль | | #2
Добавлено: 31.01.07 15:07
попробуй так:
Dim Drawing As Boolean
Dim x1 As Integer
Dim y1 As Integer
Dim x2 As Integer
Dim y2 As Integer

Private Sub Form_Load()
    Shape1.Visible=False
    Shape1.BorderStyle=3
    Me.Show
End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = vbLeftButton Then
        x1 = X
        y1 = Y
        Shape1.Left = X
        Shape1.Top = Y
        Shape1.Width = 1
        Shape1.Height = 1
        Shape1.Visible = True
        ;Drawing = True
    End If
End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Drawing Then
        x2 = X
        y2 = Y
        Shape1.Width = x2 - x1
        Shape1.Height = y2 - y1
    End If
End Sub

Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Drawing Then
        ;Drawing = False
        Shape1.Visible = False
        ;DoCrop (x1,x2,y1,y2) 'здесь типа вызов твоей процедуры
    End If
End Sub

Ответить

Номер ответа: 3
Автор ответа:
 AlexDerS



Вопросов: 37
Ответов: 61
 Профиль | | #3 Добавлено: 31.01.07 16:21
А что такое vbLeftButton?

В VB2005 такого нет (код видимо для VB6).

Ответить

Номер ответа: 4
Автор ответа:
 AlexDerS



Вопросов: 37
Ответов: 61
 Профиль | | #4 Добавлено: 31.01.07 16:22
и DoCrop?

Ответить

Номер ответа: 5
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #5
Добавлено: 31.01.07 16:39
В VB2005 такого нет (код видимо для VB6).
так и есть....

Ответить

Номер ответа: 6
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #6
Добавлено: 31.01.07 16:45
но собственно идея аналогична, вот только надо пользоваться gdi+
даю hint
            Dim pe As System.Drawing.Graphics = Me.CreateGraphics()

            pe.DrawLine(Pens.Black, 0, 0, 100, 100)

            pe.Dispose()

Ответить

Страница: 1 |

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



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