Capy是一个用于在Zig中制作真正的原生GUI的跨平台库。目前,Capy尚在积极开发中,还没有准备好应用于生产。
Capy主要用于使用操作系统的本地控件来创建应用程序。它是一个声明式的UI库,旨在使其易于编写并具有多样性。目标是为独立的UI应用提供支持,在游戏或任何其他渲染过程中的集成是一个非目标。
constcapy=@import("capy");conststd=@import("std");pubfnmain()!void{trycapy.backend.init();varwindow=trycapy.Window.init();trywindow.set(capy.Column(.{.spacing=10},.{//have10pxspacingbetweeneachcolumn'selementcapy.Row(.{.spacing=5},.{//have5pxspacingbetweeneachrow'selementcapy.Button(.{.label="Save",.onclick=buttonClicked}),capy.Button(.{.label="Run",.onclick=buttonClicked})}),//Expandedmeansthewidgetwilltakeallthespaceitcan//intheparentcontainercapy.Expanded(capy.TextArea(.{.text="HelloWorld!"}))}));window.resize(800,600);window.show();capy.runEventLoop();}fnbuttonClicked(button:*capy.Button_Impl)!void{std.log.info("Youclickedbuttonwithtext{s}",.{button.getLabel()});}
评论