Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2008, 20:03   #1
Da$aD
Пользователь
 
Регистрация: 04.04.2008
Сообщений: 15
По умолчанию программно создать объект "image" (Visual Basic 6.0)

Собственно, такая проблема. Есть космический корабль, он за один раз выпускает много ракет в разные стороны. Для каждой из них вручную создавать image - долго и нудно. Как программно создать объект image (команда будет вложена в цикл)?
Da$aD вне форума Ответить с цитированием
Старый 08.05.2008, 14:56   #2
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Как я уже говорил в VB я не силен, но теоретически могу кое-что подсказать.
Есть много ракет? хорошо, только зачем для каждой свой имидж создавать?
Имиджа (т.е. рисунка с ракетой) достаточно одного, а все выпущенные ракеты будут отрисовываться(копироваться) из него, каждая в своих координатах.
Создай один большой Image - игровое поле, и всё, больше их ненадо. Весь игровой процесс рисуй непосредственно на нем.
Для хранения мелких рисунков (ракеты, корабли и т.д.) используй либо много отдельных имиджей (видимыми их делать не надо), либо ImageList - это виндовый стандартный объект, в VB должна быть к нему надстройка, поищи.

Если очень хочется, можно конечно и объекты-имиджы клонировать, но это имхо не лучшее решение.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 08.05.2008, 18:11   #3
Da$aD
Пользователь
 
Регистрация: 04.04.2008
Сообщений: 15
По умолчанию

Проблема именно в том, что просто скопировать нельзя. Для каждого обьекта нужен свой "имидж".
Da$aD вне форума Ответить с цитированием
Старый 08.05.2008, 19:44   #4
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Цитата:
Проблема именно в том, что просто скопировать нельзя. Для каждого обьекта нужен свой "имидж".
Поясни почему нельзя, и зачем нужен каждому свой "имидж". Читая первый пост, не вижу в этом необходимости.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 09.05.2008, 08:15   #5
Da$aD
Пользователь
 
Регистрация: 04.04.2008
Сообщений: 15
По умолчанию

B VB рисунок не может появиться из ничего, простой копией. Его обязательно должен содержать другой объект, в моем случае - imаgе (единственное, чем мне не нравится VВ). Поэтому как я хочу сделать:
[цикл]
1. Создать imаgе.
2. В НЕГО скопировать рисунок-объект.
[Конец цикла]
Da$aD вне форума Ответить с цитированием
Старый 09.05.2008, 18:19   #6
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Что, в одном имидже нельзя нарисовать другой меньший по размеру?

Так как ты хочешь, можно сделать, но к динамически созданным объектам обращаться сложнее, память надо не забывать освобождать из под них, вобщем все вручную, что обычно за тебя IDE (среда) делает. Поищи в справке VB как динамически создавать объекты или в нете для бейсика статью, здесь дельфисты в основном. В Delphi для этого есть метод Create, нужно при создании указать компонент родитель, обращение потом к объекту через родителя, в цикле из списка его вложенных объектов выбирать или непосредственно к конкретному по имени можно обратиться. Думаю в VB примерно также.

А вот как я предлагаю сделать, это просто пример на несуществующем языке с несуществующей ф-ей Draw, так сказать общий концепт, я мог бы на Delphi реальный код написать, но специально не стал
Вложения
Тип файла: zip sample.zip (21.8 Кб, 40 просмотров)
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог

Последний раз редактировалось mutabor; 09.05.2008 в 19:25.
mutabor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует skobets Общие вопросы C/C++ 2 03.06.2008 06:51
Excel файл открывается не "до конца" (странички "не показываются" только серое поле) Dorvir Microsoft Office Excel 2 28.03.2008 10:03
Как в excel создать "винтовую линию"? W@LER Microsoft Office Excel 1 23.03.2007 20:04
Возможно ли средствами Delphi создать "звук" V_X Помощь студентам 2 19.12.2006 18:24