Форум программистов, компьютерный форум, киберфорум
ActionScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/29: Рейтинг темы: голосов - 29, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 19.06.2013
Сообщений: 5
AS 3.0

Появление объекта при нажатии на кнопку

28.01.2014, 15:24. Показов 5458. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет)
Прошу вас помочь мне с небольшой проблемкой...
Хочу создать программку, в которой при нажатии на кнопку будет появляться "окно", стилизованное под окна интерфейса операционной системы.


Само окно уже прописано и отрисовано (Не без помощи интернета, лол):

ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var imgWidth:Number = window1.width;
var imgHeight:Number = window1.height;
var rectWidth:Number = rect.width;
var rectHeight:Number = rect.height;
var rectX:Number = rect.x;
var rectY:Number = rect.y;
var boundWidth = rectWidth - imgWidth;
var boundHeight = rectHeight - imgHeight;
var boundsRect:Rectangle = new Rectangle(rectX, rectY, boundWidth, boundHeight);
 
window1.dragBar.addEventListener(MouseEvent.MOUSE_DOWN, DragWindow1);
 
function DragWindow1 (event:MouseEvent):void {
window1.startDrag(false, boundsRect);
 
}
 
window1.dragBar.addEventListener(MouseEvent.MOUSE_UP, DropWindow1);
window1.dragBar.addEventListener(MouseEvent.MOUSE_OUT, DropWindow1);
 
function DropWindow1 (event:MouseEvent):void {
window1.stopDrag();
}
Сейчас окно появляется при запуске swf, работает вроде нормально.

Формально выражаясь, это самое окно - "Фрагмент ролика".
И возник вопрос: какие действия для события мыши необходимо прописать, чтобы появлялся этот "Фрагмент ролика"?
Вложения
Тип файла: swf window.swf (82.0 Кб, 41 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.01.2014, 15:24
Ответы с готовыми решениями:

GameObject.SetActive(); По нажатию кнопки - появление объекта, при повторном нажатии, исчезание объекта
Привет. Не знаю, как сделать скрипт, который при нажатии кнопки делал GameObject активным , а при повторном нажатии не активным( т.е....

Появление картинки при нажатии на кнопку
Подскажите как написать программу в которой при нажатии на кнопку (button1_Click) в окне pictureBox1 появлялась картинка которая закинута в...

Появление формы при нажатии на кнопку
Здравствуйте! Очень нужна помощь! Проблема в следующем: есть кнопка, при нажатии на которую должна появляться форма. Сколько раз нажали...

7
 Аватар для Theoryofgames
254 / 238 / 50
Регистрация: 20.12.2011
Сообщений: 707
28.01.2014, 16:40
Лучший ответ Сообщение было отмечено TanaTiX как решение

Решение

ActionScript 3
1
2
3
4
5
addEventListener(MouseEvent.Click, onMouseClick); // этот обработчик вы вешаете на тот объект (кнопку), по нажатию на который будет вызываться Ваше окно
private function onMouseClick(event:MouseEvent) : void
{
  // здесь будет показ Вашего окна - подробности его показа зависят от вашего приложения
}
0
0 / 0 / 0
Регистрация: 19.06.2013
Сообщений: 5
28.01.2014, 16:45  [ТС]
Я так полагаю, что необходимо будет вынести окно в отдельный класс?
0
 Аватар для Theoryofgames
254 / 238 / 50
Регистрация: 20.12.2011
Сообщений: 707
28.01.2014, 16:55
по-хорошему - да. А вообще необязательно, так как у Вас оно в единственно экземпляре. просто закрытие/открытие реализовать с помощью visible.
1
0 / 0 / 0
Регистрация: 19.06.2013
Сообщений: 5
28.01.2014, 19:42  [ТС]
спасибо)

а я вот все таки классами заинтересовался и даже вполне успешно перевел свой код в эту структуру.
каким образом можно вызывать кнопкой экземпляр этого класса?

Главный класс:

ActionScript 3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package  {
    
    import flash.display.MovieClip;
    import WindowObj.Window1Obj_mc;
    import flash.events.MouseEvent;
    
    
    public class main extends MovieClip {
        
        public static var _this:*;
        
        private var window:Window1Obj_mc;
        
        public function main() {
            _this = this;
            window = new Window1Obj_mc;
            _this.addChild(window);
        }
    }
    
}
Класс окна:
ActionScript 3
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
29
30
31
32
33
package WindowObj {
    import flash.events.Event;
    import flash.events.MouseEvent;
    
    
    public class Window1Obj_mc extends Window1_mc {
        
        private var _this:*;        
        public function Window1Obj_mc() {
            _this = this;
            _this.x = 100;
            _this.y = 200;
            _this.addEventListener(Event.ADDED_TO_STAGE,addThis);
            
        }
        private function addThis(e:Event):void {
            _this.removeEventListener(Event.ADDED_TO_STAGE,addThis);
            addEventListener(MouseEvent.MOUSE_DOWN, DragWindow1);
            addEventListener(MouseEvent.MOUSE_UP, DropWindow1); 
        }
        
                
        public function DragWindow1 (event:MouseEvent):void {
            startDrag();
        } 
        
            
        public function DropWindow1 (event:MouseEvent):void {
            stopDrag();
        }
    }
    
}
0
Модератор
 Аватар для TanaTiX
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
28.01.2014, 20:22
Думаю, будет полезно: Авторские уроки и статьи
0
0 / 0 / 0
Регистрация: 19.06.2013
Сообщений: 5
28.01.2014, 21:05  [ТС]
Предлагаете использовать MVC?
0
Модератор
 Аватар для TanaTiX
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
28.01.2014, 21:10
Ridley666, я в 1ю очередь говорил про взаимоотношение объектов в проекте. Но да, ничего плохого в MVC не вижу, хотя можно использовать и другие паттерны.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.01.2014, 21:10
Помогаю со студенческими работами здесь

Появление полей при нажатии на кнопку
Делаю интерфейс для БД,хотел бы сделать чтобы при нажатии на кнопку появлялись поля для ввода,или при нажатии на другую кнопку,поля для...

Появление формы при нажатии на кнопку
Вообщем такая проблема: у меня есть таблица в этой таблице есть данные. Мне нужно сделать кнопку для редактирования выбранной строки. При...

Появление персонажа при первом нажатии на кнопку
Добрый день! Разрабатываю кликер. Реализовал апгрейд персонажей за золото при нажатии на кнопку. Нужно реализовать покупку...

Появление текста при нажатии на правую кнопку мыши
1)Занести координаты мыши в массив при нажатии на левую кнопку. 2)Вывести текст на месте кликов после нажатия на правую кнопку. int...

Простейший JavaScript - при нажатии на кнопку появление нового элемента списка
Суть задания: на странице - текстовое поле, список и кнопка. При нажатии на кнопку добавление нового элемента, т.е. содержимого...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 31.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 31.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 30.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru