請問ShockWaveFlash的DragDrop問題? |
答題得分者是:jow
|
mathewzhao
中階會員 發表:121 回覆:164 積分:67 註冊:2003-04-04 發送簡訊給我 |
OS : Winxp Sp6
IDE:Delphi7 在Form1上增加一個Panel1(Align:alClient),在Panel1上又添加一個ShockWaveFlash1(Align:alClient),現在想從檔案總管drag一個.swf文檔在Form1上drop後能夠自動開始播放。 Q :現在drag一個.swf文檔在Form1上drop後,程式一點反應都沒有。問題出在什麼地方尚不清楚,望各位先進指點,謝謝! ... procedure DropFile(var message:TWMDropFiles);message wm_DropFiles; ... procedure TForm1.FormShow(Sender: TObject); begin DragAcceptFiles(Handle,True); end; ... procedure TForm1.DropFile(var message:TWMDropFiles); var p:array[0..254] of char; i,n:word; FileName:string; begin inherited; n:=DragQueryFile(message.Drop,$ffffffff,nil,0); for i:=0 to n-1 do begin DragQueryFile(message.Drop,G,@p,255); FileName:=strpas(p); if ExtractFileExt(FileName)='.swf' then begin ShockwaveFlash1.Movie :=FileName ShockwaveFlash1.Play; end; end; DragFinish(message.Drop); end; |
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
測試動作:
[code delphi] unit fMain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) ListBox1: TListBox; procedure FormShow(Sender: TObject); private procedure WMDropFile(var message: TWMDropFiles); message WM_DROPFILES; public end; var Form1: TForm1; implementation uses ShellAPI; {$R *.dfm} procedure TForm1.WMDropFile(var message: TWMDropFiles); var P: array[0..254] of Char; I, n: word; FileName: string; begin inherited; n := DragQueryFile(message.Drop, Cardinal(-1), nil, 0); for i :=0 to n-1 do begin DragQueryFile(message.Drop,I,P,255); FileName := StrPas(P); if UpperCase(ExtractFileExt(FileName))='.TXT' then ListBox1.Items.LoadFromFile(FileName); end; DragFinish(message.Drop); end; procedure TForm1.FormShow(Sender: TObject); begin DragAcceptFiles(Handle, True); end; end. [/code] 試試看!! (1) DragQueryFile(message.Drop,G,@p,255); 改為: DragQueryFile(message.Drop, i, p, 255); (2) if ExtractFileExt(FileName)='.swf' then 改為: if LowerCase(ExtractFileExt(FileName))='.swf' then 個人看法, 提供你參考 |
mathewzhao
中階會員 發表:121 回覆:164 積分:67 註冊:2003-04-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |