Страница: 1 |
Страница: 1 |
Вопрос: Срочно! Подскажите как сделать?
Добавлено: 22.03.09 20:02
Автор вопроса:
Как сделать на форме такую Panel, что бы ее можно было таскать по форме мышкой и изменять ее размеры, тоже мышкой, как в конструкторе?
Ответы
Всего ответов: 11
Номер ответа: 1
Автор ответа:
Вопросов: 1
Ответов: 4
Профиль | | #1
Добавлено: 22.03.09 23:52
Объясню по другому. На форме нужно сделать прямоугольную панель с маркерами, для изменения ее размера. Такую же как она выглядит во время разработки. Перерыл весь инет и ничего не нашел. Если кто знает, помогите. Заранее благодарю.
Номер ответа: 2
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #2
Добавлено: 23.03.09 00:55
Кто здесь?
Номер ответа: 3
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #3
Добавлено: 23.03.09 01:42
Он никто и звать его никак... синонимы этого ника: & n b s p ; vbCrLf, vbTab, < s p a c e > пустое место )))
Ну так уж и весь. Давно встречал пример на Vb6, как-то даже помнится один мой знакомый делал это на ассемблере. Ищите дальше, уважаемый э... ))))
Номер ответа: 4
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #4
Добавлено: 23.03.09 08:44
http://vbnet.ru/forum/show.aspx?id=182986
http://vbnet.ru/forum/show.aspx?id=184488
Кажется мне, что это минус процедуры регистрации еа форуме. Из последних anonimus (см выше и текущий в том числе) ник=""пустое место)
Номер ответа: 5
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #5
Добавлено: 23.03.09 11:05
Направление мысли (VB6, не знаю как насчет .NET):
http://www.vbaccelerator.com/home/VB/code/Libraries/Splitting/Splitting_the_Easy_Way/article.asp
Рамку можно рассматривать как разновидность сплиттера, только в виде контейнера под контролы для ресайза.
Номер ответа: 6
Автор ответа:
Вопросов: 1
Ответов: 4
Профиль | | #6
Добавлено: 23.03.09 12:15
Доброе утро. Я не аноним Это глюки форума. Спасибо за ответы, но это всё не то.
Надо, чтобы можно было таскать панельку по всей форме и менять ее размеры мышкой. Даже не важно, что это будет Label или Panel, даже можно TextBox, лишь бы можно было менять его размеры, мышкой и что бы по углам были маркеры изменения размера. Как в конструкторе.
Заранее благодарю за помощь.
Дима из Сочи.
Номер ответа: 7
Автор ответа:
Andrey
Вопросов: 1
Ответов: 8
Профиль | | #7
Добавлено: 23.03.09 15:00
Option Explicit
Dim D As Boolean
Dim A As Double
Dim B As Double
Dim L1X As Double
Dim L1Y As Double
Dim M1X As Double
Dim M1Y As Double
Dim S2 As Boolean
Private Sub Form_Load()
D = False
S2 = False
Label2.Width = 70
Label2.Height = 70
Label2.Left = Label1.Left - 70
Label2.Top = Label1.Top - 70
Label1.BackColor = &H8000000D
Label2.BackColor = &H8000000D
End Sub
Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
D = True
A = X
B = Y
End Sub
Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If D = True Then
Label1.Left = Label1.Left + (X - A)
Label1.Top = Label1.Top + (Y - B)
Label2.Left = Label1.Left - 70
Label2.Top = Label1.Top - 70
End If
End Sub
Private Sub Label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
D = False
End Sub
Private Sub Label2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
S2 = True
L1X = Label1.Width
L1Y = Label1.Left
M1X = Label1.Height
M1Y = Label1.Top
End Sub
Private Sub Label2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If S2 = True Then
Label2.Left = Label2.Left + X
Label2.Top = Label2.Top + Y
Label1.Left = Label2.Left + 70
Label1.Top = Label2.Top + 70
Label1.Width = L1X + (L1Y - Label2.Left)
Label1.Height = M1X + (M1Y - Label2.Top)
End If
End Sub
Private Sub Label2_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
S2 = False
End Sub
До конца не писал, потому как влом
Номер ответа: 8
Автор ответа:
Вопросов: 1
Ответов: 4
Профиль | | #8
Добавлено: 23.03.09 18:00
Спасибо! Но этот код на VB6, а мне нужен на VB.NET.
Неужели, чтобы добавить узлы для изменения размера, надо писать столько кода?
Сформулирую вопрос по другому. Добавил на форму картинку, как изменить ее размеры с помощью мыши, т. е. схватил за край картинки и потянул. Наподобие как в фотошопе?
Неужели в VB.NET, нет такого?
Номер ответа: 9
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #9
Добавлено: 23.03.09 18:35
пипец.. а ты что думал, что будет что то типа такого:
и у тебя все нарисуется и будут изменяться все размеры?
мой те совет бросай свои попытки программировать.. это не твое,бросай!..
Номер ответа: 10
Автор ответа:
Вопросов: 1
Ответов: 4
Профиль | | #10
Добавлено: 24.03.09 20:32
Я думал здесь заседают Проффи, ан нет. Сам нашел решение этой задачки.
Спасибо всем. Я удаляюсь.
Номер ответа: 11
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #11
Добавлено: 24.03.09 23:10
Поделитесь, пожалуйста вашим решением задачи. Хотелось бы все-таки взглянуть.