技术有限,暂时只能这样!
import win.ui;
import win.util.desktop;
/*DSG{{*/
var winform = ..win.form(text="虚拟桌面运行程序";right=249;bottom=157;parent=...)
winform.add(
static={cls="static";text="CTRL+D 切换虚拟桌面";left=14;top=14;right=242;bottom=65;color=255;font=LOGFONT( h=-21;weight=700 );notify=1;transparent=1;z=1};
static2={cls="static";text="CTRL+F 切换桌面";left=16;top=85;right=215;bottom=136;color=255;font=LOGFONT( h=-21;weight=700 );transparent=1;z=2}
)
/*}}*/
var dskMgr = win.util.desktop();
dskMgr.create("mydesktop4"); //创建一个虚拟桌面
dskMgr.execute("mydesktop4","notepad.exe" );//在新桌面打开程序
win.invoke(
function(hDesktop){
//切换线程到新桌面
::User32.SetThreadDesktop(hDesktop);
//打开记事本写入文字
import winex;
hwnd,hEdit = winex.wait(,,"Notepad","Edit",,,1);
winex.setText(hEdit,"不错嘛")
}, dskMgr.desktop.mydesktop4
)
import win.util.tray;
traypop = win.util.tray();
traypop.pop("记事本在虚拟桌面运行并写入文字了!","提示")
winform.reghotkey(function(id,mod,vk){
dskMgr.switch("mydesktop4") //切换桌面
},0x2/*_MOD_CONTROL*/,'D'#);
winform.reghotkey(function(id,mod,vk){
dskMgr.switch("Default") //切换桌面
},0x2/*_MOD_CONTROL*/,'F'#);
winform.wndproc = function(hwnd,message,wParam,lParam){
select(message) {//判断消息类型
case 0x10/*_WM_CLOSE窗口关闭消息*/{
dskMgr.close()
traypop.delete();
}
}
}
winform.show();
win.loopMessage();
|