Avatar billede azerty Juniormester
14. maj 2011 - 01:10 Der er 1 kommentar og
1 løsning

Højreklikmenu i swf-fil (disable)

"Jeg vil gerne fjerne højreklikmenuen i en webbaseret swf-fil".

Dette spørgsmål har været stillet 1000+ gange på internettet, og svarene fra de fleste eksperter er, at man kan fjerne de fleste menuupunkter - men ikke "Settings", "Global Settings" og "About..."

Så langt er jeg også nået.

Jeg er imidlertid stødt på to eksperter, der siger, at det godt kan lade sig gøre at fjerne højreklikmenuen helt:

http://www.uza.lt/2007/08/19/solved-right-click-in-as3/

og

http://www.kirupa.com/forum/showpost.php?p=2547035&postcount=8

I begge tilfælde indeholder løsningen særlige koder for flash "containeren" i htmlkoden + et par javascriptfiler. Det er ikke så svært.

Men man skal også ind og pille ved swf-filen, og det er her, det bliver svært:

UZA har et actionscript:
===

      package {

       

          import flash.display.*;

          import flash.external.ExternalInterface;

     

          public class RightClick extends Sprite

          {

           

              public function RightClick()

              {

                  stage.scaleMode = StageScaleMode.NO_SCALE;

                  stage.align = StageAlign.TOP_LEFT;

               

                  var methodName:String = "rightClick";

                  var method:Function = onRightClick;

                  ExternalInterface.addCallback(methodName, method);

              }

           

              private function onRightClick():void {

     

                  var mx:int = stage.mouseX;

                  var my:int = stage.mouseY;

     

                  if(my> 0 && my <stage.stageHeight && mx> 0 && mx <stage.stageWidth) {

                      // YOUR CODE HERE

                  }

              }

          }

      }


KIRUPA skriver bare:

now you can call your custom function on right click with following code in ur swf:

var methodName:String = "rightClick";
  ExternalInterface.addCallback (methodName,onRightClick);

--------

Jeg har adgang til programmet "Sothink SWF Quicker", og med dette program kan jeg tilsyneladende komme dybt ind i min swf-fil, som er et lille, simpelt tegneprogram som dette:

http://flashexplained.com/actionscript/making-an-interactive-drawing-sketchpad/

(den hvid/blå swf øverst på siden)

I "Sothink SWF Quicker" er det muligt at redigere actionscriptet i swf-filen. Jeg kan copy-paste, og det har jeg selvfølgelig prøvet. Men jeg har ingen ide om, hvordan jeg skal indsætte mit actionscript med UZA's script, så det kommer til at virke.

Og for KIRUPA's vedkommende ved jeg ikke engang, hvor hans kode skal indsættes.


Er der nogen af Ekspertens Flash-eksperter, der har prøvet dette, og i givet fald: Hvad kan jeg gøre?

På forhånd tak

PS: På spørgsmålet "Hvorfor vil du fjerne højreklik-menuen?" er svaret: Jeg kører det på et smartboard i min undervisning, og det hænder ofte, at eleverne kommer til at aktivere højreklikmenuen, når de står og skriver/tegner på tegnefeltet. Det er lidt distraherende. Derfor.
Avatar billede azerty Juniormester
15. maj 2011 - 08:26 #1
Lukker.
Avatar billede azerty Juniormester
15. maj 2011 - 08:26 #2
Og svarer selv... øv
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester