好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Flex自定義右鍵菜單具體實現

Flex自定義右鍵菜單具體實現

熱門標簽:中山外呼系統中間件 車載電話機器人 無錫電銷外呼系統代理 廣州ai外呼系統業務 外呼系統號碼顯示 什么行業需要電話機器人 天津企業外呼系統代理商 地圖標注多家店 南昌crm外呼系統如何
1.自定義右鍵菜單注冊類:
項目中新增注冊類 RightClickManager,代碼如下:
復制代碼 代碼如下:

package com.siloon.plugin.rightClick
{
import flash.display.DisplayObject;
import flash.display.InteractiveObject;
import flash.events.ContextMenuEvent;
import flash.events.MouseEvent;
import flash.external.ExternalInterface;
import mx.core.Application;
public class RightClickManager
{
static private var rightClickTarget:DisplayObject;
static public const RIGHT_CLICK:String = "rightClick";
static private const javascript:XML =
script>
![CDATA[
/**
*
* Copyright 2007
*
* Paulius Uza
* http://www.uza.lt
*
* Dan Florio
* http://www.polygeek.com
*
* Project website:
* http://code.google.com/p/custom-context-menu/
*
* --
* RightClick for Flash Player.
* Version 0.6.2
*
*/
function(flashObjectId)
{
var RightClick = {
/**
* Constructor
*/
init: function (flashObjectId) {
this.FlashObjectID = flashObjectId;
this.Cache = this.FlashObjectID;
if(window.addEventListener){
window.addEventListener("mousedown", this.onGeckoMouse(), true);
} else {
document.getElementById(this.FlashObjectID).parentNode.onmouseup = function() { document.getElementById(RightClick.FlashObjectID).parentNode.releaseCapture(); }
document.oncontextmenu = function(){ if(window.event.srcElement.id == RightClick.FlashObjectID) { return false; } else { RightClick.Cache = "nan"; }}
document.getElementById(this.FlashObjectID).parentNode.onmousedown = RightClick.onIEMouse;
}
},
/**
* GECKO / WEBKIT event overkill
* @param {Object} eventObject
*/
killEvents: function(eventObject) {
if(eventObject) {
if (eventObject.stopPropagation) eventObject.stopPropagation();
if (eventObject.preventDefault) eventObject.preventDefault();
if (eventObject.preventCapture) eventObject.preventCapture();
if (eventObject.preventBubble) eventObject.preventBubble();
}
},
/**
* GECKO / WEBKIT call right click
* @param {Object} ev
*/
onGeckoMouse: function(ev) {
return function(ev) {
if (ev.button != 0) {
RightClick.killEvents(ev);
if(ev.target.id == RightClick.FlashObjectID RightClick.Cache == RightClick.FlashObjectID) {
RightClick.call();
}
RightClick.Cache = ev.target.id;
}
}
},
/**
* IE call right click
* @param {Object} ev
*/
onIEMouse: function() {
if (event.button > 1) {
if(window.event.srcElement.id == RightClick.FlashObjectID RightClick.Cache == RightClick.FlashObjectID) {
RightClick.call();
}
document.getElementById(RightClick.FlashObjectID).parentNode.setCapture();
if(window.event.srcElement.id)
RightClick.Cache = window.event.srcElement.id;
}
},
/**
* Main call to Flash External Interface
*/
call: function() {
document.getElementById(this.FlashObjectID).rightClick();
}
}
RightClick.init(flashObjectId);
}
]]>
/script>;
public function RightClickManager()
{
return;
}
static public function regist() : Boolean
{
if (ExternalInterface.available)
{
ExternalInterface.call(javascript, ExternalInterface.objectID);
ExternalInterface.addCallback("rightClick", dispatchRightClickEvent);
Application.application.addEventListener(MouseEvent.MOUSE_OVER,mouseOverHandler);
}// end if
return true;
}
static private function mouseOverHandler(event:MouseEvent) : void
{
//rightClickTarget = DisplayObject(event.target);
rightClickTarget = InteractiveObject(event.target);
return;
}
static private function dispatchRightClickEvent() : void
{
var event:MouseEvent;
if (rightClickTarget != null)
{
event = new MouseEvent(RIGHT_CLICK, true, false, rightClickTarget.mouseX, rightClickTarget.mouseY);
//event = new ContextMenuEvent(RIGHT_CLICK, true, false, rightClickTarget as InteractiveObject, rightClickTarget as InteractiveObject);
rightClickTarget.dispatchEvent(event);
}// end if
return;
}
}
}

2. 打開自己的Flex工程下的html-template文件夾下的index.template.html文件(右擊-Open With-Text Editor),在var params = {};語句的下面添加下面的語句:
params.wmode = "opaque";//屏蔽系統右鍵菜單的關鍵
--------------------------------------------------------------------------------
3. 在主程序文件中引入
復制代碼 代碼如下:

//初始化
protected function init():void
{
if (!rightClickRegisted)
{
maxNumText.text=rightClickRegisted.toString();
RightClickManager.regist();
rightClickRegisted = true;
}
this.addEventListener(RightClickManager.RIGHT_CLICK,rightClickHandler);
maxNumText.text+="init";
}
//創建菜單項
private function createMenuItems():Array
{
var menuItems:Array = new Array();
var menuItem:Object;
menuItem = new Object;
menuItem.label = '刷新'; //菜單項名稱
//menuItem.itemIcon = this.menu_SX;//菜單項圖標
menuItems.push(menuItem);
return menuItems;
}
//生成右鍵菜單
private function initMenu():void
{
menu = Menu.createMenu(this, createMenuItems(), false);
//menu.iconField="itemIcon";//右鍵菜單的圖標
//menu.labelField="label"; //右鍵菜單的名稱
menu.variableRowHeight = true;
menu.width=100;
menu.addEventListener(MenuEvent.ITEM_CLICK, menuItemSelected); //右鍵菜單的事件
var point:Point = new Point(mouseX,mouseY);
point = localToGlobal(point);
menu.show(point.x,point.y); //顯示右鍵菜單
maxNumText.text="initMenu";
}
//刪除右鍵菜單
private function removeMenu():void
{
if(menu!=null)
{
menu.hide();
menu.removeEventListener(MenuEvent.ITEM_CLICK,menuItemSelected);
menu=null;
}
maxNumText.text="removeMenu";
}
//菜單項點擊事件
private function menuItemSelected(event:MenuEvent):void
{
var menuItem:Object = event.menu.selectedItem as Object;
//……
switch(menuItem.label)
{
case "刷新":
addLine();
break;
// ……
}
}
private function addLine():void
{
maxNumText.text="addLine";
}
//控件右擊事件
private function rightClickHandler(event:MouseEvent):void
{
//tree_onRightClicked(event);
maxNumText.text="rightClickHandler0";
removeMenu();
initMenu();
maxNumText.text="rightClickHandler";
}

4.完整代碼如下
示例代碼文件
您可能感興趣的文章:
  • 右鍵發送(sendto),創建快捷方式到自定義的位置
  • 右鍵發送(sendto),創建快捷方式到自定義的位置 的vbs
  • 自定義右鍵屬性覆蓋瀏覽器默認右鍵行為實現代碼
  • JavaScript 對任意元素,自定義右鍵菜單的實現方法
  • js自定義鼠標右鍵的實現原理及源碼
  • js實現完全自定義可帶多級目錄的網頁鼠標右鍵菜單方法
  • Js實現自定義右鍵行為

標簽:攀枝花 欽州 滄州 海西 泰州 佛山 呂梁 仙桃

巨人網絡通訊聲明:本文標題《Flex自定義右鍵菜單具體實現》,本文關鍵詞  Flex,自定義,右鍵,菜單,具體,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Flex自定義右鍵菜單具體實現》相關的同類信息!
  • 本頁收集關于Flex自定義右鍵菜單具體實現的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 亚洲沟沟美女亚洲沟沟| 无码AV精品-区二区三区在线| 深深视频| 黑人性猛交xxxx乱大交一| 成人免费毛片???果冻| 色屁屁影院WWW免费下载| 欧美胖老太bbbb| 午夜一级片| 欧美国产日韩综合| 欧美精品久久久久A片18的试看| 一级日本大片免费观看| 亚洲国产一区在线精选| 色戒汤唯未删减HD| 越南妇女作爱BBBBB| 青青久操视频| 51国产黑色丝袜高跟鞋| 久草小区二区三区四区网页| 亚洲精品秘?一区二区| 色小妹在线| 成人免费精品视频| 日本欧美一区二区三区片| 国产一级婬片AAAAA片口述| 欧美国产色视频在线观看| 蜜挑视频| 久久午夜激情| 国产露脸精品国语露脸直播| 色诱爽又黄18禁无遮挡免费| 日本漂亮的年轻老师5| 九九99久久精品影视| 嗯…啊…不要| 暗交小拗女一区二区三区电影| 中文字幕视频一区二区三区.| 国产欧美乱码在线看| 明朝好丈夫| 欧美伦禁片在线播放| 偷窥女厕偷拍大赏XBXB| 国产做受???高潮豆麻| 91亚洲国产三上悠亚在线| 全彩里番acg里番本子h| 男同志chinesegay国产| 免费高潮无码AV毛片|