提交 500e4572 编写于 作者: yanghye's avatar yanghye

U: main window, WindowProperty MainFormOnTaskBar

上级 9daae4a2
......@@ -84,7 +84,12 @@ func Run(app *TCEFApplication) {
BrowserWindow.mainBrowserWindow = new(lclBrowserWindow)
}
// LCL窗口
lcl.RunApp(&BrowserWindow.mainBrowserWindow)
//lcl.RunApp(&BrowserWindow.mainBrowserWindow)
lcl.Application.Initialize()
lcl.Application.SetMainFormOnTaskBar(BrowserWindow.Config.MainFormOnTaskBar)
lcl.Application.CreateForm(&BrowserWindow.mainBrowserWindow)
lcl.Application.Run()
//lclwidget.CustomWidgetSetFinalization()
}
}
......
......@@ -20,9 +20,9 @@ type browserWindowOnEventCallback func(event *BrowserEvent, window IBrowserWindo
// 创建主窗口指定的一些快捷配置属性
type browserConfig struct {
WindowProperty
config *TCefChromiumConfig //主窗体浏览器配置
browserWindowOnEventCallback browserWindowOnEventCallback //主窗口初始化回调
WindowProperty // 部分参数仅在窗口初始化期间生效
config *TCefChromiumConfig // 主窗体浏览器配置
browserWindowOnEventCallback browserWindowOnEventCallback // 主窗口初始化回调
}
// SetChromiumConfig 设置 chromium 配置
......
......@@ -16,7 +16,9 @@ import (
"github.com/energye/energy/v2/cef/internal/ipc"
. "github.com/energye/energy/v2/cef/process"
. "github.com/energye/energy/v2/consts"
"github.com/energye/energy/v2/consts/messages"
"github.com/energye/golcl/lcl"
"github.com/energye/golcl/lcl/types"
)
// 浏览器包装结构体
......@@ -54,6 +56,7 @@ type BrowserEvent struct {
// LCLBrowserWindow
type lclBrowserWindow struct {
onMainFormWndProc lcl.TWndProcEvent
LCLBrowserWindow
}
......@@ -86,6 +89,21 @@ func (m *lclBrowserWindow) OnFormCreate(sender lcl.IObject) {
m.createAuxTools()
m.GetAuxTools().SetDevTools(createDevtoolsWindow(&m.LCLBrowserWindow))
}
m.TForm.SetOnWndProc(m.onFormWndProc)
}
func (m *lclBrowserWindow) SetOnWndProc(fn lcl.TWndProcEvent) {
m.onMainFormWndProc = fn
}
func (m *lclBrowserWindow) onFormWndProc(msg *types.TMessage) {
m.InheritedWndProc(msg)
if m.onMainFormWndProc != nil {
m.onMainFormWndProc(msg)
}
if !m.WindowProperty().MainFormOnTaskBar && msg.Msg == messages.WM_SHOWWINDOW {
m.Hide()
}
}
// MainWindow 获取主浏窗口
......
......@@ -44,6 +44,7 @@ type WindowProperty struct {
IconFS string // 窗口图标 加载emfs内置图标 emfs > resources/icon.ico, VF窗口linux使用png
EnableWebkitAppRegion bool //
EnableWebkitAppRegionDClk bool //
MainFormOnTaskBar bool // 窗口 主窗口是否显示在任务栏上 default: true. false时可能有额外的问题需要自己控制
EnableHideCaption bool // 窗口 是否隐藏标题栏, VF窗口组件Linux下不能动态控制
EnableMinimize bool // 窗口 是否启用最小化 default: true
EnableMaximize bool // 窗口 是否启用最大化 default: true
......@@ -172,6 +173,7 @@ func NewWindowProperty() WindowProperty {
EnableCenterWindow: true,
EnableWebkitAppRegion: true,
EnableWebkitAppRegionDClk: true,
MainFormOnTaskBar: true,
X: 100,
Y: 100,
Width: 1024,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册