创建子窗口
2024-05-14 09:24:04
比如这样,左侧是控制区页面,右侧是一个浏览器窗口:
func browserInit(event *cef.BrowserEvent, window cef.IBrowserWindow) { fmt.Println("初始化函数") //主窗体 bw := window.AsLCLBrowserWindow().BrowserWindow() var querkWidth int32 = 400 //夸克的宽度 //创建主窗口panel pnlMain := lcl.NewPanel(bw) pnlMain.SetParent(bw) pnlMain.SetLeft(0) // 设置窗口下面的panel位置和宽高,要把上面panel高算上 pnlMain.SetTop(0) pnlMain.SetHeight(bw.Height()) pnlMain.SetWidth(bw.Width() - querkWidth) // 使panel自动根据窗口调整大小 pnlMain.SetAnchors(types.NewSet(types.AkTop, types.AkRight, types.AkBottom, types.AkLeft)) bw.WindowParent().SetParent(pnlMain) //把自己设置成pnlMain的子窗体 //创建浏览器panel pnlQuark := lcl.NewPanel(bw) pnlQuark.SetParent(bw) pnlQuark.SetLeft(bw.Width() - querkWidth) // 设置窗口下面的panel位置和宽高,要把上面panel高算上 pnlQuark.SetTop(0) pnlQuark.SetHeight(bw.Height()) pnlQuark.SetWidth(querkWidth) // 使panel自动根据窗口调整大小 pnlQuark.SetAnchors(types.NewSet(types.AkTop, types.AkRight, types.AkBottom)) //创建浏览器 newllq := cef.NewChromiumBrowser(pnlQuark, nil) //创建浏览器窗口 newllq.WindowParent().SetAlign(types.AlClient) //全屏 newllq.Chromium().SetDefaultURL("https://m.quark.cn/") // 设置加载的页面地址 newllq.CreateBrowser() // 创建浏览器 }