zoukankan      html  css  js  c++  java
  • java cef3 禁止右键菜单项

    如下图所示,在context_menu_handler.cpp中ContextMenuHandler::OnBeforeContextMenu添加以下代码即可:

      if (model->GetCount() > 0){
          model->Clear();
      }

    暂时没有找到如何在java代码里去干这件事情,如果有朋友知道的话,麻烦留言告知在下,感激不尽!


    补:

    经过这几天对JCEF的学习,终于找到了如何在java代码中去禁止右键菜单

    public class ContextMenuHandler implements CefContextMenuHandler {
    
        private final Frame owner;
    
        private Map<Integer, String> suggestions = new HashMap<Integer, String>();
    
        public ContextMenuHandler(Frame owner) {
            this.owner = owner;
        }
    
        @Override
        public void onBeforeContextMenu(CefBrowser browser, CefContextMenuParams params, CefMenuModel model) {
            model.clear();
        }
    
        @Override
        public boolean onContextMenuCommand(CefBrowser browser, CefContextMenuParams params, int commandId,
                int eventFlags) {
            return false;
        }
    
        @Override
        public void onContextMenuDismissed(CefBrowser browser) {
    
        }
    
    }

    实现CefContextMenuHandler 接口的实现类,然后在onBeforeContextMenu方法中model.clear(),然后在主界面的CefClient对象中加入该实现即可

    client = myApp.createClient();
    client.addContextMenuHandler(new ContextMenuHandler(this));

     如果要修改右键菜单项,可以点击看我另一篇随笔:JCEF 如何修改右键菜单项

  • 相关阅读:
    如何删除一个CSDN上自己上传的资源
    ubuntu 安装 boost
    C#-提取网页中的超链接
    数组地址详解
    约瑟夫环-源码
    树的基础概念(二)
    二叉树的主要操作
    二叉树的简介及链式结构实现
    树的基础概念
    栈实现数的进制转换
  • 原文地址:https://www.cnblogs.com/minteliu/p/5708578.html
Copyright © 2011-2022 走看看