GacUI文档已经全部写完,进入制作Demo阶段

GacUI文档已经全部写完,进入制作Demo阶段
    今晚终于把 GacUI所有该加上的XML注释都加上了,开始做起了Demo。需要做的Demo大概有几十个,除了每个控件要那么几个以外,还有一些其他功能,譬如换皮肤换风格啊,使用不同的渲染器啊,移植到Direct3D上什么的,好多啊,即将写到手软。今天写了第一个Demo,是一个helloworld程序。创建一个GacUI程序是一件很容易的事情,首先下载 GacUI的最新代码(在有了Release之后会有更好的文件组织和html文档),然后将“Libraries\GacUI\Public\Source”下面的5个文件添加进建好的Visual C++的Windows工程里面,然后开始写main函数:

#include  " ..\..\Public\Source\GacUIIncludes.h "
#include 
< Windows.h >

int  CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine,  int  CmdShow)
{
    
return  SetupWindowsDirect2DRenderer();
}

void  GuiMain()
{
    GuiWindow
*  window = g::NewWindow();
    window
-> SetText(L " Hello, world! " );
    window
-> SetClientSize(Size( 640 480 ));
    window
-> MoveToScreenCenter();
    
    GuiControl
*  label = g::NewLabel();
    label
-> SetText(L " Welcome to GacUI Library! " );
    {
        FontProperties font;
        font.fontFamily
= L " Segoe UI " ;
        font.size
= 40 ;
        font.antialias
= true ;
        label
-> SetFont(font);
    }
    window
-> AddChild(label);

    GetApplication()
-> Run(window);
    delete window;
}

    Main函数里面需要选择渲染器,这里选的是Direct2D。如果要选择GDI,则调用SetupWindowsGDIRenderer。至于void GuiMain(void)函数则是类库自己的要求,一定要有那么一个,因为SetupWindowsDirect2DRenderer(或GDI)最终会进行一大段初始化工作之后调用一个声明了却没有实现的void GuiMain(void)函数,所以一个合法的GacUI工程需要包含void GuiMain(void)的实现,也就是上面这样。

    然后接下来的就是普通的工作了,创建一个GuiWindow,加点东西,Run一下当主窗口。当主窗口被关掉的时候Run函数就会结束,这个时候进行一下必要的清理,程序就可以结束了。运行之后就是下面这个样子:



    至此HelloWorld的Demo就结束了。

你可能感兴趣的:(GacUI文档已经全部写完,进入制作Demo阶段)