要求窗口悬浮在桌面,但是其他软件可以覆盖,不影响使用,当按下win+d可以正常显示窗体,应该如何实现?

设置窗口的父窗口为桌面窗口即可:

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469;bgcolor=8388736)
winform.add()
/*}}*/

import winex.desktop
var desk = winex.desktop.listview.hwnd
win.setParent(winform.hwnd, desk)

winform.show();
win.loopMessage();

从这个代码中,我们还能学习到aardio里桌面的句柄是winex.desktop.listview.hwnd.

快捷键代码:

winform.reghotkey( function(id,mod,vk){ //注册热键按 Ctrl+D
if(win.getForeground()=winform.hwnd){
//io.print("收到快捷键命令")
winform.show()
}
},0x2/*_MOD_CONTROL*/,'D'#)