Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > Интеграция Flash с...

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 12.02.2004, 17:19
Ezhy вне форума Посмотреть профиль Отправить личное сообщение для Ezhy Найти все сообщения от Ezhy
  № 1  
Ezhy

Регистрация: Feb 2004
Адрес: Россия, Ульяновск
Сообщений: 19
По умолчанию А можно события посылать ?...

Уважаемые мастера !

Пожалуйста, подскажите, как события в операционную систему послать ?

(WM_PAINT, WM_CLOSE, WM_MINIMIZE мне надо)

и как поймать HANDLE нужного окна через ActionScript ?..

Заранее всем спасибо !

Старый 12.02.2004, 21:15
Deviant вне форума Посмотреть профиль Отправить личное сообщение для Deviant Найти все сообщения от Deviant
  № 2  
Deviant

Регистрация: Feb 2004
Сообщений: 36
Они тут мало знают о программировании, к сожелению. Меня тоже интересовал этот вопрос. Все что удалось выяснить (кстати, на программерском форуме rsdn.ru), что взаимодействие flash с приложением возможна только через FSCommand(command, args), посылаемых из flash-мувика и ловящимися через событийный интерфейс (_IShockwaveFlashEvents для C++). Другого способа я еще не нашел
Если, вдруг, что-то найдешь другое - кидай, хотябы сюда

Старый 12.02.2004, 21:26
Deviant вне форума Посмотреть профиль Отправить личное сообщение для Deviant Найти все сообщения от Deviant
  № 3  
Deviant

Регистрация: Feb 2004
Сообщений: 36
Что-то я поторопился немного.
Эти события (WM_PAINT, WM_CLOSE, WM_MINIMIZE), а точнее сообщения, должно возвращать окно, в котором поднят flash_activex, если я правильно понимаю их назначение и область использования. А вот на счет WM_PAINT не уверен вообще. Зачем нужна обработка этого месаджа?
А на счет хендла окна я вообще не понял. Откуда его нужно ловить?


Последний раз редактировалось Deviant; 12.02.2004 в 21:28.
Старый 13.02.2004, 11:36
toFlash вне форума Посмотреть профиль Отправить личное сообщение для toFlash Найти все сообщения от toFlash
  № 4  
toFlash
 
Аватар для toFlash

блогер
Регистрация: Oct 2003
Адрес: Калининград
Сообщений: 202
Записей в блоге: 4
примерно так: в swf - fscommand("clsApp");
в обработчике OnFSCommand(LPCSTR cmdBuf, LPCSTR szArgsBuf) в сях:
Код:

CString szCommand=cmdBuf;
if(szCommand == "clsApp")       
{
	PostMessage(WM_CLOSE, 0, 0);
} 
__________________
flash portfolio

Старый 13.02.2004, 18:14
Ezhy вне форума Посмотреть профиль Отправить личное сообщение для Ezhy Найти все сообщения от Ezhy
  № 5  
Ezhy

Регистрация: Feb 2004
Адрес: Россия, Ульяновск
Сообщений: 19
OnFSCommand - это что ? А если флешка открыта в объекте типа tWebBrowser (Delphi) ? тогда как ?

Старый 16.02.2004, 11:15
toFlash вне форума Посмотреть профиль Отправить личное сообщение для toFlash Найти все сообщения от toFlash
  № 6  
toFlash
 
Аватар для toFlash

блогер
Регистрация: Oct 2003
Адрес: Калининград
Сообщений: 202
Записей в блоге: 4
Цитата:
Оригинал написал(а) Ezhy
OnFSCommand - это что ? А если флешка открыта в объекте типа tWebBrowser (Delphi) ? тогда как ?
OnFSCommand - это обработчик сообщений передаваемых от ActiveX'a Flash, имеет два параметра LPCSTR cmdBuf(случае это первый параметр в fscommand- т.е. "clsApp" ) и LPCSTR szArgsBuf (в данном случае второй параметр не передается, но в нем можно передать дополнительную инфу для блока обработчика, например список переменных и др.).
А на счет Delphi я в нем не силен, незнаю.
Ищи ф-ю похожую на описанную выше и имеющую два параметра
__________________
flash portfolio


Последний раз редактировалось toFlash; 16.02.2004 в 11:24.
Старый 16.02.2004, 14:58
Deviant вне форума Посмотреть профиль Отправить личное сообщение для Deviant Найти все сообщения от Deviant
  № 7  
Deviant

Регистрация: Feb 2004
Сообщений: 36
В Делфе все будет точно так же, если ты будешь использовать ActiveX flash-компонент. А ты, как я понимаю, открываешь флеш-мувик через TWebBrowser, который просто умеет ее воспроизвести правильно. Он доступа к управлению flash тебе не даст, разве что, давать ему на загрузку хтмль-ый файл где поднимаеться эта флэшка и есть наобходимый код для ее нормального фунциклирования (но это уже из области программирования для Web). Если же ты хочень иметь какие-то элементарные функции управления и взаимодействия с flah-мувиком, используй TShockwaveFlash или что-то похожее, импортируемое из ActiveX-го компонента Flash. Подробнее ищи о взаимодействии Delphi и Flash в инете.
Во вложении небольшой help.
Вложения
Тип файла: zip delphi и flash_ Совмещение несовместимого!.zip (6.4 Кб, 222 просмотров)

Старый 17.02.2004, 11:53
Ezhy вне форума Посмотреть профиль Отправить личное сообщение для Ezhy Найти все сообщения от Ezhy
  № 8  
Ezhy

Регистрация: Feb 2004
Адрес: Россия, Ульяновск
Сообщений: 19
Это все хорошо, но задача такова:
Форма Дельфи, на ней TWebBrowser, а в нем - флешка.
Нажимаешь на флешке кнопку и все закрывается (например, послать событие WM_CLOSE дельфовому окну).

Какие будут предложения ?...

Старый 17.02.2004, 18:27
Deviant вне форума Посмотреть профиль Отправить личное сообщение для Deviant Найти все сообщения от Deviant
  № 9  
Deviant

Регистрация: Feb 2004
Сообщений: 36
А как ты соеденяешь флэку с TWebBrowser? Я, хоть и работал с Delphi, но использовать TWebBrowser не приходилось.

В любом случаем, кроме варианта с html-ым файлом, другого ничего не вижу. При условии, что эту флешку написал ты, иначе этот способ не поможет. Способ, как я уже говорил, заключается в том, что во флешке, при нажатии на кнопочку, ты через FSCommand отсылаешь какую-нибудь условную команду "delphi_zakroysa" . Потом пишешь html'ку, которая эту флэшку загружает и может обработать твою команду "delphi_zakroysa". Обработка этой команды должна заключаться в посылке уже библиотечной функции JS - функции закрытия окна эксплорера, где эта функция описана.
Теперь, теоретически (не знаю, не пробовал), что-то должно произойти в TWebBrowser. Он или получит сам сообщение на закрытие или получит какое-нибудь сообщение на закрытие окна html, которое в нем было(c flash). Повторяю - я это только так себе представляю, а будет ли реально TWebBrowser как-то реагировать на то, что внутри него была запущена на исполнение команда JS на закрытие, я не знаю. Так вот, если будет, то теперь без проблем обрабатываешь уже событие от TWebBrowser и делаешь Close всей форме (разумееться, предусмотрев все необходимые прверки, чтобы это событие не сгенерировалось при закрытии TWebBrowser по завершению работы программы). Если это все будет работать - тебе повезло, другого способа я не вижу (в случае использования TWebBrowser).
Если флешка чужая и ни каких сообщений при нажатии на кнопку наружу не посылает, то тут уже ничего не поможет.
Ей можно только любоваться.

Старый 17.03.2004, 02:06
GROL вне форума Посмотреть профиль Отправить личное сообщение для GROL Посетить домашнюю страницу GROL Найти все сообщения от GROL
  № 10  
GROL

Регистрация: Mar 2004
Сообщений: 5
Не понятно, на кой тебе здался TWebBrowser. Тебе именно он нужен? Просто использование TShockwaveFlash не подойдет?

Если без TWebBrowser, то можно отловить нажатие на всем мувике. Как это сделать можно глянуть у TShockwaveFlashEx

Создать новую тему   Часовой пояс GMT +4, время: 09:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:47.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.