在delphi中使用dcef3中碰到的一些问题和解决方案:
1. 在需要在exe中点击弹出一些其他的exe框来显示页面的时候 需要将 Result 设置成false 自己写弹出框可以设置成 true
procedure TfrmWeb.chrm1BeforePopup(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame; const targetUrl,
targetFrameName: ustring; var popupFeatures: TCefPopupFeatures;
var windowInfo: TCefWindowInfo; var client: ICefClient;
var settings: TCefBrowserSettings; var noJavascriptAccess: Boolean;
out Result: Boolean);
begin
//改成false 用来启用系统自带的弹出框
Result := False;
end;
这里弹框总是没有标题没有找到好办法解决,用到比较死的方式
procedure TfrmWeb.chrm1TitleChange(Sender: TObject;
const browser: ICefBrowser; const title: ustring);
var
tcHandler1 :THandle;
stitle:string;
begin
// 需要新弹出窗体 这个是给新弹出窗体的名字改成 title
stitle := title;
tcHandler1 := FindWindowEx(0, 0, PChar('CefBrowserWindow'), nil) ;
SetWindowText(tcHandler1, PChar(stitle));
tcHandler := tcHandler1;
end;