Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.95/22: Рейтинг темы: голосов - 22, средняя оценка - 4.95
 Аватар для aptos
13 / 13 / 3
Регистрация: 04.06.2013
Сообщений: 156

Реализовать движущийся фон

24.04.2014, 22:29. Показов 5754. Ответов 56
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как это проще всего оформить в VB6? Менять координаты длиннющей картинки и перерисовывать ее чтобы создавалось ощущение движения, или есть способы получше?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.04.2014, 22:29
Ответы с готовыми решениями:

Движущийся автомобиль)))
Здравствуйте...помогите пожалуйста составить алгоритм программы с анимацией. В общем задание: нам даны две картинки (автомобиль и знак...

Как создать движущийся шарик
Разработка программы движения шарика в окне с отражением от стенок по законам геометрической оптики. Шарик появляется в том месте где...

Движущийся фон блока js
Добрый день, уважаемые форумчане ! Подскажите начинающему как реализовать вот такое demo.bonefishcode.com/bone/file/single.html ? ...

56
 Аватар для aptos
13 / 13 / 3
Регистрация: 04.06.2013
Сообщений: 156
25.04.2014, 00:03  [ТС]
Студворк — интернет-сервис помощи студентам
Ох нифи.. прикольный плакатик. А какая часть кода убирает ненужный фон?

Добавлено через 39 секунд
Вот-вот, как обрезать-то?)
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:04

Не по теме:

FelixMacintosh, у меня PNG :D


Gif в Image будет моргать при движении.
1
 Аватар для aptos
13 / 13 / 3
Регистрация: 04.06.2013
Сообщений: 156
25.04.2014, 00:05  [ТС]
Еще, trick, если изучать программирование игр на VB6, это дает какую-то пользу для создания действительно серьезных игр?
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:05
Цитата Сообщение от aptos Посмотреть сообщение
А какая часть кода убирает ненужный фон?
Читай доки по апи. TransparentBlt убирает ключевой цвет.
0
 Аватар для aptos
13 / 13 / 3
Регистрация: 04.06.2013
Сообщений: 156
25.04.2014, 00:06  [ТС]
В картинке с деревом вокруг дерева есть фон, в программе его нет. Какая часть кода убирает ненужный фон? А все
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
25.04.2014, 00:07
пример
Вложения
Тип файла: rar Путешествие по моему столу 2.rar (236.8 Кб, 8 просмотров)
1
 Аватар для aptos
13 / 13 / 3
Регистрация: 04.06.2013
Сообщений: 156
25.04.2014, 00:09  [ТС]
Цитата Сообщение от The trick Посмотреть сообщение
Читай доки по апи.
Это опять на MSDN, да?

Цитата Сообщение от FelixMacintosh Посмотреть сообщение
пример
Attached Files
Путешествие по моему столу 2.rar (236.8 KB, 0 views)
И правда гифка моргает)
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
25.04.2014, 00:09
Цитата Сообщение от The trick Посмотреть сообщение
Gif в Image будет моргать при движении.
только сейчас заметил, что моргает ... пока ты не сказал
но я думаю можно частоту прорисовки настроить и всё будет тип-топ !
1
25.04.2014, 00:10  [ТС]

Не по теме:

Так, я ушел, но обещал вернуться, спокойной ночи. Завтра на свежую голову подумаю :)

0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:10
Цитата Сообщение от aptos Посмотреть сообщение
Еще, trick, если изучать программирование игр на VB6, это дает какую-то пользу для создания действительно серьезных игр?
На VB6 можно все что угодно написать это такой же язык как и другие. Он компилирует очень эффективный, быстрый код (если правильно написать). Серьезные игры обычно пишут на готовых движках. Ты можешь сам написать на VB движок (кстати Майкл портировал DirectX9 на него). Польза будет в том, что ты будешь изучать графический механизм (например DirectX), а его работа практически не зависит от языка.
1
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
25.04.2014, 00:11
мы сейчас за разговорами... готовую игру состряпаем наверное )))
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:12
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
но я думаю можно частоту прорисовки настроить и всё будет тип-топ !
Нет.
Для этого нужно рисовать в буфер. А из буфера уже в окно.
1
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
25.04.2014, 00:15
Цитата Сообщение от The trick Посмотреть сообщение
Для этого нужно рисовать в буфер.
чет я никак догнать не могу... как это ...
Продемонстрируй пожалуйста на примере моего проекта
если не трудно а то не усну, буду ворочаться...
1
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:20
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Вот пример двойной буферизации и работы TransparentBlt. Кстати еще можно регионы отсечения использовать, или более качественное альфа-наложение.
Вложения
Тип файла: rar DoubleBuffer.rar (7.1 Кб, 21 просмотров)
Тип файла: rar Transparent.rar (12.3 Кб, 20 просмотров)
2
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:23
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
чет я никак догнать не могу... как это ...
Продемонстрируй пожалуйста на примере моего проекта
если не трудно а то не усну, буду ворочаться...
Я делал модуль для проигрывания GIF там двойная буферизация (у меня в блоге). Да практически во всех моих проектах используется двойная буферизация.
Кстати практически доделал то что ты просил (получить Enum'ы из ocx, dll)
2
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
25.04.2014, 00:37
Цитата Сообщение от The trick Посмотреть сообщение
Кстати практически доделал то что ты просил (получить Enum'ы из ocx, dll
очень интересно будет потом взглянуть, думал это чтото невозможное )
но ошибся )

Добавлено через 8 минут
Не пойму почему солнышко не перемещается ...

Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub picSun_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Static oldX!, oldY!
    
    If Button = 1 Then
        picSun.Move picSun.Left + X - oldX, picSun.Top + Y - oldY
    Else
        oldX = X: oldY = Y
    End If
 
End Sub
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
25.04.2014, 00:41
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
Не пойму почему солнышко не перемещается ...
Потому что picturebox не надо перемещать - он невидим.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Private Declare Function TransparentBlt Lib "msimg32.dll" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal crTransparent As Long) As Boolean
 
Private Sub Form_Load()
    Call Form_MouseMove(0, 0, Me.ScaleWidth / 2, Me.ScaleHeight / 2)
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Dim N As Long, W As Long
    
    Me.Cls
    For N = 0 To Me.ScaleWidth Step picBody.ScaleWidth + 10
        TransparentBlt Me.hdc, N, 150, picBody.ScaleWidth, picBody.ScaleHeight, _
                       picBody.hdc, 0, 0, picBody.ScaleWidth, picBody.ScaleHeight, &HFF00FF
        TransparentBlt Me.hdc, N, 150, picHead.ScaleWidth, picHead.ScaleHeight, _
                       picHead.hdc, 0, 0, picHead.ScaleWidth, picHead.ScaleHeight, &HFF00FF
    Next
    N = 0
    Rnd -1
    Do While N < Me.ScaleWidth
        W = (Rnd * 0.25 + 0.75) * picGround.ScaleWidth
        TransparentBlt Me.hdc, N, 160, W, picGround.ScaleHeight, _
                       picGround.hdc, 0, 0, picHead.ScaleWidth, picGround.ScaleHeight, &HFF00FF
        N = N + W
    Loop
    
    TransparentBlt Me.hdc, X, Y, picSun.ScaleWidth, picSun.ScaleHeight, _
                    picSun.hdc, 0, 0, picSun.ScaleWidth, picSun.ScaleHeight, &HFF00FF
    Me.Refresh
End Sub
1
Заблокирован
25.04.2014, 05:45
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
я настолько крут
0
es geht mir gut
 Аватар для SoftIce
11275 / 4761 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
25.04.2014, 08:33
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Пара примеров игр с просторов интернета.
Вложения
Тип файла: rar Engine.rar (71.3 Кб, 11 просмотров)
Тип файла: zip fish.zip (131.5 Кб, 11 просмотров)
Тип файла: rar Super_M.rar (57.2 Кб, 10 просмотров)
0
 Аватар для aptos
13 / 13 / 3
Регистрация: 04.06.2013
Сообщений: 156
25.04.2014, 09:57  [ТС]
Цитата Сообщение от SoftIce Посмотреть сообщение
Пара примеров игр с просторов интернета.
Ошибка тут:
Visual Basic
1
Public dx8 As New DirectX8
DirectX8 чтоли устанавливать надо?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.04.2014, 09:57

Динамичный движущийся фон
Доброго времени суток! Может кто знает каким образом реализован фон в одноклассниках - фон когда запрашивает логин с пассом, где меняются...

Реализовать движущийся графический объект с помощью статических и динамических объектов
Добрый день. Решаю задачу из методички и поставлена она следующим образом: используя технологию объектно-ориентированного...

Реализовать двухцветный фон
Здравствуйте. Прошу мне помочь. Есть например у нас дом какой-то на экране.(нарисованный в графике). Надо сделать чтобы было пол экрана...

CSS, реализовать представленный фон
CSS, реализовать представленный фон

[SFML] Как реализовать прозрачный фон?
Работаю, в VS , пишу на C++, помогите пожалуйста сделать так, чтобы после проигрыша, было видно плитки (игра 2048, последнее их положение)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С. Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию? Фраза «Любая достаточно развитая технология неотличима от магии». . .
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль? Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология. «Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки. Добавлены следующие реквизиты типа Булево: - Буквы; - Цифры; - Символы. Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru