aardio 文档

aardio 范例: 窗口程序 - 无边框窗口

无边框窗口开发指南

//窗口程序 - 无边框窗口
//无边框窗口开发指南: https://www.aardio.com/zh-cn/doc/library-guide/std/win/ui/frameless.html
import win.ui;
/*DSG{{*/
var winform = win.form(text="无边框窗口";right=757;bottom=467;bgcolor=0xFFFFFF;border="none")
winform.add(
bk={cls="bk";left=0;top=0;right=760;bottom=27;bgcolor=0xA4A0A0;dl=1;dr=1;dt=1;z=1}
)
/*}}*/

//下面的代码实现用鼠标左键按住窗口时可拖动改变窗口位置
winform.onMouseDown  = function(wParam,lParam){
    winform.hitCaption()    
}

import win.ui.simpleWindow;

/*
为无边框窗口添加阴影边框、可拖动边框,自定义的窗口标题栏(包含标题栏按钮)。
如果窗口设计时属性中最大化按钮设为隐藏(false),则最大化按钮以及可拖动边框不会出现。

在调用此构造函数以后,默认会在延时 100 毫秒后自动设置标题栏默认样式。
建议在界面初始化完成并且标题区背景色已更新之后再调用此构造函数,这样才能根据背景色选择更合适的默认样式。。
*/
var sw = win.ui.simpleWindow(winform);//标题栏高度默认为 27 ,与 winform.bk 高度一样

//修改样式(可选,默认会自动选择默认样式。如果显式调用了 skin 方法则忽略默认样式)
sw.skin( 
    background = { 
        hover = 0xff99ffcc;//0xAARRGGBB 格式颜色
        active = 0xffff6666; 
        default = 0x00000000; 
    }
    color = { 
        hover = 0xff666666;
        active = 0xffffffff; 
        default = 0xffffffff; 
    }
)

//关闭按钮单独配色(可选)
sw.titlebarClose.skin({
    background = {
        hover = 0xFFe35c51;
        active = 0xFF8f241b;
    };
    color = {
        hover = 0xFFFFFFFF;
        active = 0xFFEEEEEE;
        default = 0xffffffff; 
    }
})

winform.show();
win.loopMessage();
Markdown 格式