Перемещение объекта на форме с помощью мыши
Рассмотрим пример, как можно перемещать объект по форме с помощью мыши. В качестве объекта возьмем PictureBox.
- Создайте проект и помесите на форму объект PictureBox1. В свойстве Image поместите в объект какую-нибудь картинку и выровняйте границы объекта до размеров рисунка.
- Создадим заготовку для кода. Нам потребуется процедура загрузки формы. Дважды щелкните мышкой на форме Form1. Автоматически создастся процелура загрузки. Поместите в нее следующий код:
Нам потребуются так же процедуры событий нажатия и отпускания левой кнопки мышки и движение на PictureBox1. Выделите на форме PictureBox1., —> щелкните правой кнопкой мышки—> выберите свойства. В окне свойства выберите вкладку события (она обозначена значком «молния»). В меню события выберите, например событие MouseDownи дважды щелкните мышкой на этой строчке. Это приведет к созданию процедуры Sub PictureBox1_MouseDown. Аналогично создайте процедуры Sub PictureBox1_MouseUp и Sub PictureBox1_MouseMove. Введите код в эти процедуры, как показано ниже. Окончательно код будет выглядет так:
Запустите проект, подведите указатель мыши на картинку, нажмите левую кнопку и не отпуская ее попробуйте подвигать картинку.
Есть проще вариант.
Спасибо за содержательный ответ.
Мне кажется, или ВБ.нет очень похож на вб6?
В шестом код аналогичной проги выглядит почти также.
Очень похож. Там собсна в плане синтаксиса языка изменений было мало. Поменяли платформу, сменили оную на .NET, под нужды платформы подогнали синтаксис, а идея осталось та же. Так что не мудрено, что похоже. А ты ждал что из бейсика Haskell сделали?)
Кстати хочу сказать, что у языка ВБ очень хороший и емкий синтаксис. Отнюдь, я уж привык к плюсам да шарпу. Тут значит далее маленькая отсебятина:
Коли синтаксис ВБ так уж похож на аглицкий язык, то надо было делать аглицким до конца, как, экзампл, AppleScript, то бишь не
If a = b Then
.
End If
If a Equals b Then
.
End If
(да, да, опять Equals, да простит меня лайсо)
Ну и конструкция «If imouse = 1 And mouseY >= pozy — 10 And mouseY EverybodyLies 280 [27.02.2013 11:35] и снова я вижу твою безумную идею насчет equals) А как такое на VB6 сделать? M161, Точно также, Абсолютно так же. ток синтаксис vb6 использовать, а алгоритм такой же Есть ещё надёжный способ претаскиваниие объектов — это АПИ, использутся это функция в основном для перетаскивание форму за люболе место, про это куча уроков alex13sh, напиши такой урок, думаю M161 будет благодарен тебе. Release, лан) А кто говорит о списывании? Напиши урок по своим знаниям! Только при написании оформляй все красивенько!
Ток я нелюблю урок списывать, с простой заменной подчерка))