как скролить картинку?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Xaker_S
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.04.2003 (Ср) 3:28
Откуда: Severomorsk

как скролить картинку?

Сообщение Xaker_S » 21.04.2003 (Пн) 6:42

8) Народ, привет!!!
Как можно скролить картинку?
Т.е. например картинка больше чем Image. Когда скролишь она просматривается?

Александр Андреев
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 145
Зарегистрирован: 09.04.2003 (Ср) 16:43
Откуда: Н.Новгород

Сообщение Александр Андреев » 21.04.2003 (Пн) 14:56

Вот самое тупое решение:

Делаешь на своей форме PictureBox. В него помещаешь Image, в который загржаешь свою картинку. Потом этот Image двигаешь, изменяя его Top и Left. 8)

Xaker_S
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.04.2003 (Ср) 3:28
Откуда: Severomorsk

Сообщение Xaker_S » 21.04.2003 (Пн) 17:06

:( я немного не так выразился. Надо создать эффект типа в и играх.
Карту перемещать, только скролом.

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2054
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 21.04.2003 (Пн) 17:19

Xaker_S писал(а)::( я немного не так выразился. Надо создать эффект типа в и играх.
Карту перемещать, только скролом.


Хм... Дядька поясника - Ты игруху с DirectX делаешь или через api вояешь какую нить простенькую ?
Если 2, то я расскажу как, а если с DirectX, то это те надо в другой раздел форума - где про DX всё обсуждают. :wink:

Александр Андреев
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 145
Зарегистрирован: 09.04.2003 (Ср) 16:43
Откуда: Н.Новгород

Сообщение Александр Андреев » 21.04.2003 (Пн) 17:21

Ты похоже снова не так выразился :lol:
Что значит скроллить?
Перемещаешь ползунок на скроллбаре, либо подводишь мышь к краю рабочей области (типа autoscroll). Возможны еще варианты. Программа же в ответ на это перемещает картинку так, чтобы показать нужную ее часть.
Как картинку переместить - я сказал. Что еще требуется?

Xaker_S
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.04.2003 (Ср) 3:28
Откуда: Severomorsk

Сообщение Xaker_S » 22.04.2003 (Вт) 5:56

:lol: Именно так, делаю игруху. Но надо чтобы карту можно было двигать: лучше если стрелками клавы.

Лёха_Virus
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 168
Зарегистрирован: 24.03.2003 (Пн) 17:13
Откуда: Анграск

Сообщение Лёха_Virus » 22.04.2003 (Вт) 14:40

попутно вопрос: как загрузить картинку в пикчу например и чтоб она автоматически размер уменьшила до размеров пикчи

vovchikxxx
Обычный пользователь
Обычный пользователь
 
Сообщения: 50
Зарегистрирован: 22.01.2003 (Ср) 19:32
Откуда: Сергиев Посад

Сообщение vovchikxxx » 24.04.2003 (Чт) 1:44

Вот те прога картинку тянешь как в ACDsee давишь и тяянешь
А главное за границы не вйдет никогда!
Вот адрес
http://www.vovchikxxx.narod.ru/files/task.rar
Админам сорри за ссылку не смог добавить типа размер большой хотя 150 Кб
Все будет Хорошо!

Xaker_S
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.04.2003 (Ср) 3:28
Откуда: Severomorsk

Сообщение Xaker_S » 24.04.2003 (Чт) 11:38

:( Скачать то скачал. А извлечь неполучается. Пишет Неизвестный метод. нет файлов для извлечения. Помогите!!!

vovchikxxx
Обычный пользователь
Обычный пользователь
 
Сообщения: 50
Зарегистрирован: 22.01.2003 (Ср) 19:32
Откуда: Сергиев Посад

Сообщение vovchikxxx » 25.04.2003 (Пт) 0:05

Во код формы целиком
На ней нужно только picture1 создать!
-------------------------------------------------------------------------
Option Explicit
Dim StartX, StartY As Long
Dim Moving As Boolean
Dim Flag As Single


Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
StartX = X
StartY = Y
Moving = True
End If
End Sub

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
If Moving = True Then
If Picture1.Left + X - StartX + Picture1.Width > Frame1.Width And X - StartX < 0 Or Picture1.Left + X - StartX < Frame1.Width - Frame1.Width And X - StartX > 0 Then
Picture1.Move Picture1.Left + X - StartX, Picture1.Top
End If
If Picture1.Top + Y - StartY + Picture1.Height > Frame1.Height And Y - StartY < 0 Or Picture1.Top + Y - StartY < Frame1.Height - Frame1.Height And Y - StartY > 0 Then
Picture1.Move Picture1.Left, Picture1.Top + Y - StartY
End If
End If
End If
End Sub

Private Sub Picture1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
Moving = False
End If
End Sub
:wink: :wink:
Все будет Хорошо!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Mail.ru [бот], Yandex-бот и гости: 71

    TopList