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

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.03.2007, 15:31
Donor вне форума Посмотреть профиль Отправить личное сообщение для Donor Найти все сообщения от Donor
  № 11  
Ответить с цитированием
Donor

Регистрация: Feb 2007
Сообщений: 13
У меня все получилось. Там все намного прощее:
Во Flash
Код:
on (release) {
fscommand("Click", ocenca);
}
В Delphi
Код:
procedure TMain.ShockwaveFlash1FSCommand(ASender: TObject; const command,
  args: WideString);
var a:WideString;
begin
if command  =  'Click' then
      begin
     a:=args;
     Edit1.text:=a;
     end
end;
Вот и все! Всем спасибо за советы.

Старый 11.03.2007, 15:33
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 12  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от techno
не надо мне руки отрывать, а то аватар сгрызу
Скорее я добавлю Banned над твоим.
Ладно, разобрались и славно.

Старый 09.02.2008, 09:33
Arreke вне форума Посмотреть профиль Отправить личное сообщение для Arreke Посетить домашнюю страницу Arreke Найти все сообщения от Arreke
  № 13  
Ответить с цитированием
Arreke
[+3 29.01.08]
 
Аватар для Arreke

Регистрация: May 2004
Адрес: Казахстан
Сообщений: 33
На форме имеется компонент ShockwaveFlash1:
[IMG]http://i040.***********/0802/f1/4e00ae53a282.gif[/IMG]

Не получается сделать перемещение форму по экрану за оранжевую область в ShockwaveFlash1.

Есть такой код:
Код:
private
procedure WMLButtonDown(var Msg: TMessage); message WM_LBUTTONDOWN;

procedure TForm1.WMLButtonDown(var Msg: TMessage);
begin
Perform(WM_NCLBUTTONDOWN, HTCAPTION, Msg.LParam);
end;
Он работает для перемещения формы за любую её область. А мне нужно таскать форму за любой компонент, не только за область формы.
В Гугле дырку проделал, ничё не нашёл, помогите please кто в курсе.

Старый 11.02.2008, 12:36
Arreke вне форума Посмотреть профиль Отправить личное сообщение для Arreke Посетить домашнюю страницу Arreke Найти все сообщения от Arreke
  № 14  
Ответить с цитированием
Arreke
[+3 29.01.08]
 
Аватар для Arreke

Регистрация: May 2004
Адрес: Казахстан
Сообщений: 33
Кто нибудь знает, на Delphi можно в компоненте ShockwaveFlash убрать вызов меню, которое выходит при нажатии правой кнопки, типа аналог getURL("FSCommand:showmenu", false) на флеш.

Старый 11.02.2008, 12:56
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 15  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
на Delphi не программил, но идея, думаю, должна сработать.
нужно перехватывать события мыши в оболочке. либо хуком, либо оконную процедуру указанного компонента подменять на свою. или вставить компонент в специальный контейнер и ловить мышь в нем. или готовый ехе пощупать резхакером или чем-то подобным. и не забывайте про кнопку "Меню" на клаве, по ней тоже меню вываливается.
как-то так.
сам интересуюсь этим вопросом. отпишитесь, если не трудно по результатам.

Старый 11.02.2008, 14:57
Arreke вне форума Посмотреть профиль Отправить личное сообщение для Arreke Посетить домашнюю страницу Arreke Найти все сообщения от Arreke
  № 16  
Ответить с цитированием
Arreke
[+3 29.01.08]
 
Аватар для Arreke

Регистрация: May 2004
Адрес: Казахстан
Сообщений: 33
Вот перехват правой кнопки мыши, на форму кидаеш компонент ApplicationEvents, который на вкладе Additional:

Код:
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, OleCtrls, ShockwaveFlashObjects_TLB, AppEvnts;

type
 TForm1 = class(TForm)
   ShockwaveFlash1: TShockwaveFlash;
   ApplicationEvents1: TApplicationEvents;
   procedure ApplicationEvents1Message(var Msg: tagMSG;
     var Handled: Boolean);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
var
FlashPlayerClass: array[0..MAX_PATH-1] of Char;
begin
Case Msg.message OF
 WM_RBUTTONDOWN:
              begin
                GetClassName(Msg.hwnd,FlashPlayerClass,MAX_PATH);
                if  (FlashPlayerClass = 'MacromediaFlashPlayerActiveX') then
                Handled:= True;
              end;
end;
end;

end.
А вот как сюда добавить кнопку меню на клавиатуре?
Видишь WM_RBUTTONDOWN, нужно типа такого же для этой кнопки.

Старый 11.02.2008, 17:34
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 17  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Код:
LRESULT CALLBACK GetMsgProc(HWND hWnd,UINT nMsg,WPARAM wParam,LPARAM lParam){
	
switch (nMsg) 
{
case WM_KEYDOWN:
switch (wParam)
    {
       case 93:
      // handler
       return 1;
       break;
     }
....
на С++ я так делал.
VK_MENU = 93 вроде.


Последний раз редактировалось alexcon314; 11.02.2008 в 17:39.
Старый 12.02.2008, 02:07
Arreke вне форума Посмотреть профиль Отправить личное сообщение для Arreke Посетить домашнюю страницу Arreke Найти все сообщения от Arreke
  № 18  
Ответить с цитированием
Arreke
[+3 29.01.08]
 
Аватар для Arreke

Регистрация: May 2004
Адрес: Казахстан
Сообщений: 33
Разобрался, internet+google forever.
Вообщем на форму кидаем компонент ApplicationEvents.

И пишем такой код:
Код:
const
FlashPlayerClassName: String = 'MacromediaFlashPlayerActiveX';
WM_WINMENUKEY = $100;
implementation

{$R *.dfm}

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
var
TempClass: array [0..49] of Char;
begin
With Msg Do Begin
 Case message Of
    WM_RBUTTONDOWN:
    Begin
      GetClassName(hwnd,TempClass,50);
      if  (StrPas(TempClass) = FlashPlayerClassName) then Handled:= True;
    End;  // WM_RBUTTONDOWN
   WM_WINMENUKEY: Handled:= True;
 End; // Case
End; //With

end;

Старый 12.02.2008, 15:23
Arreke вне форума Посмотреть профиль Отправить личное сообщение для Arreke Посетить домашнюю страницу Arreke Найти все сообщения от Arreke
  № 19  
Ответить с цитированием
Arreke
[+3 29.01.08]
 
Аватар для Arreke

Регистрация: May 2004
Адрес: Казахстан
Сообщений: 33
в предыдущем примере кнопка меню в приложении вообще не будет работать, теперь только на нашей флешке:

Код:
const
FlashPlayerClassName: String = 'MacromediaFlashPlayerActiveX';
WM_WINMENUKEY = $100;
implementation

{$R *.dfm}

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
var
TempClass: array [0..49] of Char;
begin
  With Msg Do Begin
    Case message Of
      WM_RBUTTONDOWN, WM_WINMENUKEY:
      Begin
        GetClassName(hwnd,TempClass,50);
        if (StrPas(TempClass) = FlashPlayerClassName) then Handled:= True;
      End;
    end; //Case
  End; //With

end;

Старый 12.02.2008, 18:03
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 20  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
гуд. спасибо. не пересесть ли мне на дэлфи?
а вы часом не знаете как упаковать флаш-компонент в екзе, чтоб стандалоне плеер получился, точнее прожектор? или в дэлфи это подразумевается само-собой?


Последний раз редактировалось alexcon314; 12.02.2008 в 18:06.
Создать новую тему Ответ Часовой пояс GMT +4, время: 23:26.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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