Отключить контекстное меню в Chromium Embedded 3 (DCEF3)
Я пытаюсь отключить правую кнопку мыши (контекстное меню) в окне Chromium Embedded (DCEF3), но я не получаю, я не нашел никаких настроек, чтобы сделать это изначально.
Я могу, например, отключить "View Source", я использую код ниже, но я действительно хочу отключить контекстное меню или не хочу, чтобы оно появлялось.
Примечание: я использую это в DLL " Chromium.dll "libray для использования с "Inno Setup", равным Inno Web Брауэр.
procedure TInnoChromium.OnContextMenuCommand(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame;
const params: ICefContextMenuParams; commandId: Integer;
eventFlags: TCefEventFlags; out Result: Boolean);
begin
if (commandId = 132) then Result := True; // MENU_ID_VIEW_SOURCE
end;
2 ответов
чтобы отключить контекстное меню в DCEF 3, вам нужно будет обработать OnBeforeContextMenu
событие и очистить его
Примечание: В C++ версия:
void ClientHandler::OnBeforeContextMenu(
CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame,
CefRefPtr<CefContextMenuParams> params,
CefRefPtr<CefMenuModel> model) {
CEF_REQUIRE_UI_THREAD();
//Clear disables the context menu
model->Clear();
}
}