web.view打包桌面应用扩展学习
知识点:1.利用窗口原子(atom)来判断程序是否已经运行,并且在判断程序已运行时激活并显示主窗口。2.创建托盘图标 弹出菜单
3.关闭窗口时隐藏主窗口
4.托盘图标点击展示或隐藏主窗口
import win.ui;
import win.ui.atom;
import win.ui.menu;
import win.util.tray;
import web.view;
/*DSG{{*/
mainForm = win.form(text="豆包";right=1919;bottom=1079;max=false;min=false)
mainForm.add()
/*}}*/
var atom, hwnd = mainForm.atom("FEEBA353-7D78-485F-AFE6-BA913FBAF117");
if (!atom) {
if(hwnd){
win.show(hwnd, 9/*_SW_RESTORE*/);
win.setForeground(hwnd);
}
win.quitMessage();
return;
}
var tray = win.util.tray(mainForm) //创建托盘图标
tray.tip = "豆包" //设置鼠标提示
mainForm.popmenu = win.ui.popmenu(mainForm);//创建弹出菜单
mainForm.popmenu.add('&exit',function(id){ ::User32.DestroyWindow(mainForm.hwnd) })
mainForm.onClose = function(hwnd,message,wParam,lParam){
//点击 x 时隐藏主窗口
mainForm.hide()
return true;
}
mainForm.onTrayMessage = {
= function(wParam){
win.setForeground(mainForm.hwnd)
mainForm.popmenu.popup()
};
= function(wParam){
//单击托盘图标隐藏或展示
/*if(mainForm.visible){
mainForm.hide( mainForm.hwnd)
}else{
mainForm.show()
}*/
};
= function(wParam){
//双击托盘图标隐藏或展示
if(mainForm.visible){
mainForm.hide()
}else{
mainForm.show()
}
};
= function(wParam){
};
= function(wParam){
};
}
var wb = web.view(mainForm);
wb.go("https://www.doubao.com/")
mainForm.show();
return win.loopMessage();
谢谢分享,很实用。
页:
[1]