跳转到帖子
搜索在
  • 更多选项...
查找包含的结果...
查找结果在...

墨香年少

Administrators
  • 帖子数

    301
  • 注册日期

  • 上次访问

  • 得奖次数

    18

最新回复 发布由 墨香年少


  1. counter.h:

    #ifndef COUNTER_H
    #define COUNTER_H
    
    #include <QObject>
    #include <QThread>
    #include <QDebug>
    #include <QRandomGenerator>
    
    class Counter : public QObject
    {
        Q_OBJECT
    public:
        explicit Counter(QObject *parent = nullptr);
    
    signals:
    public slots:
        void start();
    };
    
    #endif // COUNTER_H

    counter.cpp:

    #include "counter.h"
    
    Counter::Counter(QObject *parent)
        : QObject{parent}
    {
    
    }
    
    void Counter::start()
    {
        for (int var = 0; var < 20; var++)
        {
            qInfo() << "[" << QThread::currentThread()->objectName() << "]" << var;
            int value = static_cast<unsigned long>(QRandomGenerator::global()->bounded(500));
            QThread::currentThread()->msleep(value);
        }
    
        QThread::currentThread()->quit();
    }

    manager.h:

    #ifndef MANAGER_H
    #define MANAGER_H
    
    #include <QObject>
    #include <QThread>
    #include <QDebug>
    #include "counter.h"
    
    class Manager : public QObject
    {
        Q_OBJECT
    public:
        explicit Manager(QObject *parent = nullptr);
        void start();
    signals:
    public slots:
        void started();
        void finished();
    private:
        QList<QThread*> threads;
    };
    
    #endif // MANAGER_H

    manager.cpp:

    #include "manager.h"
    
    Manager::Manager(QObject *parent) : QObject{parent}
    {
        for (int var = 0; var < 5; var++)
        {
            QThread* thread = new QThread(this);
            thread->setObjectName("thread"+QString::number(var));
    
            qInfo() << "Created:" << thread->objectName();
    
            connect(thread,&QThread::started,this, &Manager::started);
            connect(thread,&QThread::finished,this, &Manager::finished);
    
            threads.append(thread);
        }
    }
    
    //Start
    void Manager::start()
    {
        qInfo() << "Starting...";
    
        foreach (QThread* thread, threads)
        {
            Counter* c = new Counter();
            c->moveToThread(thread);
    
            connect(thread,&QThread::started, c, &Counter::start);
            thread->start();
        }
    }
    
    void Manager::started()
    {
        QThread* thread = qobject_cast<QThread*>(sender());
        if(!thread) return;
        qInfo() << "started:" << thread->objectName();
    }
    
    void Manager::finished()
    {
        QThread* thread = qobject_cast<QThread*>(sender());
        if(!thread) return;
        qInfo() << "finished:" << thread->objectName();
    }

    main.cpp:

    #include <QCoreApplication>
    #include <QThread>
    #include <QDebug>
    #include "manager.h"
    
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
    
        QThread::currentThread()->setObjectName("MainThread");
        qInfo() << "Current Thread:" << QThread::currentThread()->objectName();
    
        Manager m;
        m.start();
    
        return a.exec();
    }

    ---

    result:

    
    00:17:32: C:\Users\Administrator\Documents\build-threadTest-Desktop_Qt_6_5_2_MSVC2019_64bit-Debug\threadTest.exe crashed.
    
    00:17:42: Starting C:\Users\Administrator\Documents\build-threadTest-Desktop_Qt_6_5_2_MSVC2019_64bit-Debug\threadTest.exe...
    Current Thread: "MainThread"
    Created: "thread0"
    Created: "thread1"
    Created: "thread2"
    Created: "thread3"
    Created: "thread4"
    Starting...
    [ "thread2" ] 0
    [ "thread4" ] 0
    started: "thread2"
    [ "thread4" ] 1
    [ "thread1" ] 0
    [ "thread0" ] 0
    [ "thread3" ] 0
    started: "thread0"
    started: "thread4"
    started: "thread1"
    started: "thread3"
    [ "thread1" ] 1
    [ "thread4" ] 2
    [ "thread3" ] 1
    [ "thread2" ] 1
    [ "thread1" ] 2
    [ "thread2" ] 2
    [ "thread0" ] 1
    [ "thread1" ] 3
    [ "thread3" ] 2
    [ "thread3" ] 3
    [ "thread2" ] 3
    [ "thread4" ] 3
    [ "thread2" ] 4
    [ "thread3" ] 4
    [ "thread0" ] 2
    [ "thread1" ] 4
    [ "thread2" ] 5
    [ "thread1" ] 5
    [ "thread4" ] 4
    [ "thread3" ] 5
    [ "thread3" ] 6
    [ "thread1" ] 6
    [ "thread0" ] 3
    [ "thread3" ] 7
    [ "thread3" ] 8
    [ "thread2" ] 6
    [ "thread1" ] 7
    [ "thread4" ] 5
    [ "thread1" ] 8
    [ "thread2" ] 7
    [ "thread0" ] 4
    [ "thread4" ] 6
    [ "thread3" ] 9
    [ "thread0" ] 5
    [ "thread0" ] 6
    [ "thread4" ] 7
    [ "thread2" ] 8
    [ "thread4" ] 8
    [ "thread0" ] 7
    [ "thread2" ] 9
    [ "thread3" ] 10
    [ "thread1" ] 9
    [ "thread0" ] 8
    [ "thread4" ] 9
    [ "thread3" ] 11
    [ "thread2" ] 10
    [ "thread1" ] 10
    [ "thread0" ] 9
    [ "thread4" ] 10
    [ "thread2" ] 11
    [ "thread3" ] 12
    [ "thread0" ] 10
    [ "thread0" ] 11
    [ "thread1" ] 11
    [ "thread4" ] 11
    [ "thread1" ] 12
    [ "thread3" ] 13
    [ "thread0" ] 12
    [ "thread2" ] 12
    [ "thread0" ] 13
    [ "thread4" ] 12
    [ "thread2" ] 13
    [ "thread1" ] 13
    [ "thread1" ] 14
    [ "thread3" ] 14
    [ "thread1" ] 15
    [ "thread3" ] 15
    [ "thread0" ] 14
    [ "thread4" ] 13
    [ "thread2" ] 14
    [ "thread2" ] 15
    [ "thread3" ] 16
    [ "thread1" ] 16
    [ "thread2" ] 16
    [ "thread0" ] 15
    [ "thread4" ] 14
    [ "thread3" ] 17
    [ "thread3" ] 18
    [ "thread4" ] 15
    [ "thread1" ] 17
    [ "thread2" ] 17
    [ "thread1" ] 18
    [ "thread0" ] 16
    [ "thread4" ] 16
    [ "thread0" ] 17
    [ "thread2" ] 18
    [ "thread3" ] 19
    [ "thread1" ] 19
    [ "thread4" ] 17
    [ "thread2" ] 19
    finished: "thread3"
    [ "thread0" ] 18
    finished: "thread1"
    [ "thread4" ] 18
    finished: "thread2"
    [ "thread4" ] 19
    [ "thread0" ] 19
    finished: "thread4"
    finished: "thread0"

     


  2. pc_manager.png

     

    we app ui:

    ui.png

     

    xml:

    <?xml version="1.0" encoding="utf-8"?>
    <Window caption="0,0,0,36" roundcorner="0,0" size="842,522" sizebox="6,6,6,6" mininfo="842,522" maxinfo="842,522">
    	<Font id="0" name="Consolas" size="14" bold="false" default="true" shared="true" />
    	<Font id="1" name="Segoe UI Light" size="28" bold="false" default="true" shared="true" />
    	<Font id="2" name="Consolas" size="12" bold="false" default="true" shared="true" />
    	<VerticalLayout bkcolor="#FFFFFFFF" bordersize="1" bordercolor="#FF454B4D">
    
    		<VerticalLayout height="140" bkcolor="#FF1855a5" bkcolor2="#FF3877c9" padding="1,1,1,0">
    
    			<HorizontalLayout name="header" height="32" >
    				<Label text="Tencent PC Manager (just for duilib tutorial)" textcolor="#FFFFFFFF" font="0" padding="10,0,0,0" />
    				<Control />
    				<HorizontalLayout height="18" width="80" padding="0,7,10,0" >
    					<Button name="btn_min" maxwidth="18" maxheight="18" padding="0,0,8,0" normalimage="file='title/setting_normal.png' source='0,0,0,0'" hotimage="file='title/setting_active.png' source='0 0 0 0'" pushedimage="file='title/setting_active.png' source='0 0 0 0'"/>
    					
    					<Button name="btn_min" maxwidth="18" maxheight="18" padding="0,0,8,0" normalimage="file='title/min_normal.png' source='0,0,0,0'" hotimage="file='title/min_active.png' source='0 0 0 0'" pushedimage="file='title/min_active.png' source='0 0 0 0'"/>
    
    					<Button name="btn_close" maxwidth="18" maxheight="18" normalimage="file='title/close_normal.png' source='0,0,0,0'" hotimage="file='title/close_active.png' source='0 0 0 0'" pushedimage="file='title/close_active.png' source='0 0 0 0'"/>
    				</HorizontalLayout>
    			</HorizontalLayout>
    			
    			<HorizontalLayout>
    				<Control width="88" height="88" bkimage="file='thunder.png' source='0,0,0,0'" padding="30,10,0,0" />
    				<Label text="Scan regularly to remove risks" font="1" padding="20,0,0,0" textcolor="#FFFFFFFF" width="365" height="108" />
    				<Button text="Quick Scan" font="1" padding="70,28,0,0" textcolor="#FFFFFFFF" width="142" height="52" bkcolor="#FF01C248" />
    				<Button padding="0,28,0,0" textcolor="#FFFFFFFF" width="24" height="52" bkcolor="#FF01C248" bordersize="1,0,0,0" bordercolor="#FF4c8561" />
    				<Control width="22" height="22" bkimage="file='down.png' source='0,0,0,0'" padding="-24,45,0,0" />
    			</HorizontalLayout>
    		
    		</VerticalLayout>
    
    		<VerticalLayout name="body" padding="1,0,1,1">
    			<VerticalLayout bkcolor="#FFffffff">
    				<VerticalLayout width="620" height="265" bkcolor="#FFffffff" padding="146,42,0,0">
    				
    					<Label text="Antivirus Engines" font="1" textcolor="#FF333333" />
    					<HorizontalLayout>
    						<Control width="68" height="68" bkimage="file='ico1.png' source='0,0,0,0'" padding="0,10,20,10" />
    						<Control width="68" height="68" bkimage="file='ico2.png' source='0,0,0,0'" padding="0,10,20,10" />
    						<Control width="68" height="68" bkimage="file='ico3.png' source='0,0,0,0'" padding="0,10,20,10" />
    						<Control width="68" height="68" bkimage="file='ico4.png' source='0,0,0,0'" padding="0,10,20,10" />
    						<Control width="68" height="68" bkimage="file='ico5.png' source='0,0,0,0'" padding="0,10,20,10" />
    						<Control width="68" height="68" bkimage="file='ico6.png' source='0,0,0,0'" padding="0,10,20,10" />
    					</HorizontalLayout>
    					
    					<Label text="Protection Status" font="1" textcolor="#FF333333" padding="0,26,0,10" />
    					<HorizontalLayout>
    						<VerticalLayout width="215" height="55">
    							<HorizontalLayout>
    								<Label text="4" font="1" textcolor="#FF000000" width="20" height="26" />
    								<Label text="Days" font="0" textcolor="#FF333333" />
    							</HorizontalLayout>
    							<Label text="Protecting your computer" textcolor="#FF666666" />
    						</VerticalLayout>
    						
    						<VerticalLayout width="215" height="55">
    							<HorizontalLayout>
    								<Label text="4" font="1" textcolor="#FF000000" width="20" height="26" />
    								<Label text="Days" font="0" textcolor="#FF333333" />
    							</HorizontalLayout>
    							<Label text="Protecting your computer" textcolor="#FF666666" />
    						</VerticalLayout>
    						
    						<VerticalLayout width="215" height="55">
    							<HorizontalLayout>
    								<Label text="4" font="1" textcolor="#FF000000" width="20" height="26" />
    								<Label text="Days" font="0" textcolor="#FF333333" />
    							</HorizontalLayout>
    							<Label text="Protecting your computer" textcolor="#FF666666" />
    						</VerticalLayout>
    					</HorizontalLayout>
    				</VerticalLayout>
    			</VerticalLayout>
    			
    			<Control height="1" bkcolor="#FFb8bbb9" />
    			
    			<HorizontalLayout bkcolor="#FFffffff" bordercolor="#FF000000" height="36">
    				<Label text="Powered by http://thinkh5.com" font="2" padding="10,0,0,0" textcolor="#FF6c9acd" />
    				<Control />
    				<Label text="Quarantin" font="2" width="85" textcolor="#FF6c9acd" />
    				<Label text="Whitelist" font="2" width="85" textcolor="#FF6c9acd" />
    				<Label text="Scan logs" font="2" width="85" textcolor="#FF6c9acd" />
    			</HorizontalLayout>
    		</VerticalLayout>
    
      </VerticalLayout>
    </Window>

    resource.zip:

    resource.zip

     

    project zip download:

    duilib_hello.zip


  3. you may be find you cannot realy cose the exe only close it in task manager.

    so we create a button and when we click the close button to real close the exe.

     

    the xml code:

    <?xml version="1.0" encoding="UTF-8"?>
    <Window size="340,280" caption="0,0,0,35">
    	<Font id="0" name="Courier New Bold" size="22" bold="false"/>
    	<VerticalLayout>
    		<HorizontalLayout bkcolor="#FFff1a1a"/>
    		<HorizontalLayout>
    			<Button name="btn_close" font="0" text="close app" bkcolor="#FF00b33c"/>
    		</HorizontalLayout>
    		<HorizontalLayout bkcolor="#FFffd633"/>
    	</VerticalLayout>
    </Window>

    the app.cpp code:

    #include "app.h"
    
    class MainWndFrame : public WindowImplBase 
    {
    protected:
    	virtual CDuiString GetSkinFolder() override;
    	virtual CDuiString GetSkinFile() override;
    	virtual LPCTSTR GetWindowClassName(void) const override;
    
    	virtual DuiLib::UILIB_RESOURCETYPE GetResourceType() const override;
    	virtual LPCTSTR GetResourceID() const override;
    
    	virtual void InitWindow();
    	virtual void Notify(TNotifyUI& msg);
    public:
    	static const LPCTSTR kClassName;
    	static const LPCTSTR kMainWndFrame;
    
    	CPaintManagerUI m_pm;
    private:
    	CButtonUI* m_pCloseBtn;
    };
    
    DuiLib::CDuiString MainWndFrame::GetSkinFolder()
    {
    	return m_PaintManager.GetInstancePath();
    }
    
    DuiLib::CDuiString MainWndFrame::GetSkinFile()
    {
    	return kMainWndFrame;
    }
    
    LPCTSTR MainWndFrame::GetWindowClassName(void) const
    {
    	return kClassName;
    }
    
    DuiLib::UILIB_RESOURCETYPE MainWndFrame::GetResourceType() const
    {
    	return UILIB_FILE;
    }
    
    LPCTSTR MainWndFrame::GetResourceID() const
    {
    	return MAKEINTRESOURCE(101);
    }
    
    void MainWndFrame::InitWindow()
    {
    	m_pCloseBtn = dynamic_cast<CButtonUI*>(m_pm.FindControl(_T("btn_close")));
    }
    
    void MainWndFrame::Notify(TNotifyUI& msg)
    {
    	if (msg.sType == DUI_MSGTYPE_CLICK)
    	{
    		CDuiString strName = msg.pSender->GetName();
    		if (strName == _T("btn_close"))
    		{
    			PostQuitMessage(0);
    		}
    	}
    
    	__super::Notify(msg);
    }
    
    const LPCTSTR MainWndFrame::kClassName = _T("main_wnd");
    const LPCTSTR MainWndFrame::kMainWndFrame = _T("main_wnd.xml");
    
    int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
    	_In_opt_ HINSTANCE hPrevInstance,
    	_In_ LPWSTR    lpCmdLine,
    	_In_ int       nCmdShow)
    {
    	UNREFERENCED_PARAMETER(hPrevInstance);
    	UNREFERENCED_PARAMETER(lpCmdLine);
    
    	// 设置窗口关联的实例
    	CPaintManagerUI::SetInstance(hInstance);
    
    	// 设置皮肤的默认路径
    	CPaintManagerUI::SetCurrentPath(CPaintManagerUI::GetInstancePath());
    	CPaintManagerUI::SetResourcePath(_T("theme"));
    
    	// 创建窗口
    	MainWndFrame* pMainWndFrame = new MainWndFrame;
    	pMainWndFrame->Create(nullptr, MainWndFrame::kClassName, UI_WNDSTYLE_DIALOG, 0);
    	pMainWndFrame->CenterWindow();
    	pMainWndFrame->ShowWindow();
    
    	CPaintManagerUI::MessageLoop();
    
    	if (nullptr != pMainWndFrame)
    	{
    		delete pMainWndFrame;
    	}
    
    	return 0;
    }

     


  4. app.h

    #pragma once
    
    #include <windows.h>
    
    #include "UIlib.h"
    using namespace DuiLib;

    app.cpp

    #include "app.h"
    
    class MainWndFrame : public WindowImplBase
    {
    protected:
    	virtual CDuiString GetSkinFolder() override;
    	virtual CDuiString GetSkinFile() override;
    	virtual LPCTSTR GetWindowClassName(void) const override;
    
    	virtual DuiLib::UILIB_RESOURCETYPE GetResourceType() const override;
    	virtual LPCTSTR GetResourceID() const override;
    public:
    	static const LPCTSTR kClassName;
    	static const LPCTSTR kMainWndFrame;
    };
    
    DuiLib::CDuiString MainWndFrame::GetSkinFolder()
    {
    	return m_PaintManager.GetInstancePath();
    }
    
    DuiLib::CDuiString MainWndFrame::GetSkinFile()
    {
    	return kMainWndFrame;
    }
    
    LPCTSTR MainWndFrame::GetWindowClassName(void) const
    {
    	return kClassName;
    }
    
    DuiLib::UILIB_RESOURCETYPE MainWndFrame::GetResourceType() const
    {
    	return UILIB_ZIPRESOURCE;
    }
    
    LPCTSTR MainWndFrame::GetResourceID() const
    {
    	return MAKEINTRESOURCE(101);
    }
    
    const LPCTSTR MainWndFrame::kClassName = _T("main_wnd");
    const LPCTSTR MainWndFrame::kMainWndFrame = _T("main_wnd.xml");
    
    int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
    	_In_opt_ HINSTANCE hPrevInstance,
    	_In_ LPWSTR    lpCmdLine,
    	_In_ int       nCmdShow)
    {
    	UNREFERENCED_PARAMETER(hPrevInstance);
    	UNREFERENCED_PARAMETER(lpCmdLine);
    
    	// 设置窗口关联的实例
    	CPaintManagerUI::SetInstance(hInstance);
    
    	// 设置皮肤的默认路径
    	CPaintManagerUI::SetCurrentPath(CPaintManagerUI::GetInstancePath());
    	CPaintManagerUI::SetResourcePath(_T("theme"));
    
    	HINSTANCE hRCDll = ::LoadLibrary(_T("resdll.dll"));
    	CPaintManagerUI::SetResourceDll(hRCDll);
    
    	// 创建窗口
    	MainWndFrame* pMainWndFrame = new MainWndFrame;
    	pMainWndFrame->Create(nullptr, MainWndFrame::kClassName, UI_WNDSTYLE_DIALOG, 0);
    	pMainWndFrame->CenterWindow();
    	pMainWndFrame->ShowWindow();
    
    	CPaintManagerUI::MessageLoop();
    
    	if (nullptr != pMainWndFrame)
    	{
    		delete pMainWndFrame;
    	}
    
    	return 0;
    }

     


  5. when you add the xml file to exe, if you open the exe by winrar, you can see the xml file.

    exe_file.png

    a new way is add xml file to a dll

    OK, let see the xml file's content

    <?xml version="1.0" encoding="UTF-8"?>
    <Window size="340,280" caption="0,0,0,35">
    	<Font id="0" name="Courier New Bold" size="22" bold="false"/>
    	<VerticalLayout>
    		<HorizontalLayout bkcolor="#FFff1a1a"/>
    		<HorizontalLayout>
    			<Button name="btn_close" font="0" text="duilib use dll resource" bkcolor="#FF00b33c"/>
    		</HorizontalLayout>
    		<HorizontalLayout bkcolor="#FFffd633"/>
    	</VerticalLayout>
    </Window>

    and rename xml file: main_wnd.xml

     

    make main_wnd.xml to theme.zip

     

    1. create a new project ( dll project )

    create_dll_project.png

     

    add theme.zip to the resource, type is ZIPRES

    note: please copy theme.zip to :D:\duilib\project\resdll

    res_preview.png

     

    build project. you will get dll:

    1>Finished generating code
    1>resdll.vcxproj -> D:\duilib\project\duilib_hello\Release\resdll.dll
    ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

    add code to app.cpp

    HINSTANCE hRCDll = ::LoadLibrary(_T("resdll.dll"));
    CPaintManagerUI::SetResourceDll(hRCDll);

    run exe

    run_exe.png

     

    you can download the dll project and duilib_hello project

    resdll.zip

    duilib_hello.zip


  6. 1.make sure theme.zip file (D:\duilib\project\duilib_hello\Release\Res\theme.zip) exists.

    if file not exists, you can download from there:

    theme.zip

     

    2.modfile app.h

    #pragma once
    
    #include <windows.h>
    #include "resource.h"
    
    #include "UIlib.h"
    using namespace DuiLib;

    3.modfile app.cpp

    #include "app.h"
    
    class MainWndFrame : public WindowImplBase
    {
    protected:
    	virtual CDuiString GetSkinFolder() override;
    	virtual CDuiString GetSkinFile() override;
    	virtual LPCTSTR GetWindowClassName(void) const override;
    
    	virtual DuiLib::UILIB_RESOURCETYPE GetResourceType() const override;
    	virtual LPCTSTR GetResourceID() const override;
    public:
    	static const LPCTSTR kClassName;
    	static const LPCTSTR kMainWndFrame;
    };
    
    DuiLib::CDuiString MainWndFrame::GetSkinFolder()
    {
    	return m_PaintManager.GetInstancePath();
    }
    
    DuiLib::CDuiString MainWndFrame::GetSkinFile()
    {
    	return kMainWndFrame;
    }
    
    LPCTSTR MainWndFrame::GetWindowClassName(void) const
    {
    	return kClassName;
    }
    
    DuiLib::UILIB_RESOURCETYPE MainWndFrame::GetResourceType() const
    {
    	return UILIB_ZIPRESOURCE;
    }
    
    LPCTSTR MainWndFrame::GetResourceID() const
    {
    	return MAKEINTRESOURCE(IDR_ZIPRES1);
    }
    
    const LPCTSTR MainWndFrame::kClassName = _T("main_wnd");
    const LPCTSTR MainWndFrame::kMainWndFrame = _T("main_wnd.xml");
    
    int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
    	_In_opt_ HINSTANCE hPrevInstance,
    	_In_ LPWSTR    lpCmdLine,
    	_In_ int       nCmdShow)
    {
    	UNREFERENCED_PARAMETER(hPrevInstance);
    	UNREFERENCED_PARAMETER(lpCmdLine);
    
    	// 设置窗口关联的实例
    	CPaintManagerUI::SetInstance(hInstance);
    
    	// 设置皮肤的默认路径
    	CPaintManagerUI::SetCurrentPath(CPaintManagerUI::GetInstancePath());
    	CPaintManagerUI::SetResourcePath(_T("theme"));
    
    	// 创建窗口
    	MainWndFrame* pMainWndFrame = new MainWndFrame;
    	pMainWndFrame->Create(nullptr, MainWndFrame::kClassName, UI_WNDSTYLE_DIALOG, 0);
    	pMainWndFrame->CenterWindow();
    	pMainWndFrame->ShowWindow();
    
    	CPaintManagerUI::MessageLoop();
    
    	if (nullptr != pMainWndFrame)
    	{
    		delete pMainWndFrame;
    	}
    
    	return 0;
    }

    3. add theme.zip to resource

    res.png

     

    4. build and run the project...

     

    5. now you can copy the exe and past exe file to every, and run it success no any dll or other files. just a exe file.

     

    6. if you open this exe use winrar , you will see the xml file

    exe_file.png


  7. 1.zip D:\duilib\project\duilib_hello\Release\theme\main_wnd.xml to D:\duilib\project\duilib_hello\Release\Res\theme.zip

    zip.png

     

    2.change app.cpp file

    	// 设置皮肤的默认路径
    	//CPaintManagerUI::SetCurrentPath(CPaintManagerUI::GetInstancePath());
    	//CPaintManagerUI::SetResourcePath(_T("theme"));
    	
    	CPaintManagerUI::SetResourcePath(CPaintManagerUI::GetInstancePath()+"\\Res\\");
    	CPaintManagerUI::SetResourceZip(_T("theme.zip"));

    3.Build and run ...

    zip_file_[review.png


  8. <?xml version="1.0" encoding="UTF-8"?>
    <Controls>
    	<Window parent="">
    		<Attribute name="size" default="0,0" type="SIZE" comment="窗口的初始化大小,如(800,600)"/>
    		<Attribute name="sizebox" default="0,0,0,0" type="RECT" comment="窗口可拖动改变窗口大小的边距,如(4,4,6,6)"/>
    		<Attribute name="caption" default="0,0,0,0" type="RECT" comment="窗口可拖动的标题栏大小的边距,最后一个参数是指离上边框的距离,如(0,0,0,28)"/>
    		<Attribute name="roundcorner" default="0,0" type="SIZE" comment="窗口圆角大小,如(4,4)"/>
    		<Attribute name="mininfo" default="0,0" type="SIZE" comment="窗口最小大小,如(320,240)"/>
    		<Attribute name="maxinfo" default="0,0" type="SIZE" comment="窗口最大大小,如(1600,1200)"/>
    		<Attribute name="alpha" default="255" type="BYTE" comment="窗口的alpha值(0-255),如(100)"/>
    		<Attribute name="bktrans" default="false" type="BOOL" comment="窗口是否使用静态透明背景,如(false)"/>
    		<Attribute name="disabledfontcolor" default="0xFFA7A6AA" type="DWORD" comment="默认的disabled字体颜色,如(0xFFA7A6AA)"/>
    		<Attribute name="defaultfontcolor" default="0xFF000000" type="DWORD" comment="默认的字体颜色,如(0xFF000000)"/>
    		<Attribute name="linkfontcolor" default="0xFF0000FF" type="DWORD" comment="默认的link字体颜色,如(0xFF0000FF)"/>
    		<Attribute name="linkhoverfontcolor" default="0xFFD3215F" type="DWORD" comment="默认的linkhoverfont字体颜色,如(0xFFD3215F)"/>
    		<Attribute name="selectedcolor" default="0xFFBAE4FF" type="DWORD" comment="默认的selected字体颜色,如(0xFFBAE4FF)"/>
    		<Attribute name="showdirty" default="false" type="BOOL" comment="绘制脏矩形(屏幕上更新的区域被称为脏矩形)"/>
    	</Window>
    	<ChildLayout parent="Container" >
    		<Attribute name="xmlfile" default="" type="STRING" comment="子窗体XML布局文件"/>
    	</ChildLayout>
    	<Control parent="" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="0" type="INT | RECT" comment="可以设置INT或RECT类型的值。当值为ING时则左、上、右、下都用该值作为宽。值为RECT类型时则分别设置左、上、右、下的边框"/>
    		<Attribute name="leftbordersize" default="0" type="INT" comment="左边边框大小,如(1),设置该值大于0,则将忽略bordersize属性的设置"/>
    		<Attribute name="topbordersize" default="0" type="INT" comment="顶部边框大小,如(1),设置该值大于0,则将忽略bordersize属性的设置"/>
    		<Attribute name="rightbordersize" default="0" type="INT" comment="右边边框大小,如(1),设置该值大于0,则将忽略bordersize属性的设置"/>
    		<Attribute name="bottombordersize" default="0" type="INT" comment="底部边框大小,如(1),设置该值大于0,则将忽略bordersize属性的设置"/>
    		<Attribute name="borderstyle" default="0" type="INT" comment="边框样式的设置,数值范围0-5"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="keyboard" default="true" type="BOOL" comment="非CButtonUI类忽略该值,为false时不支持TAB_STOP,且该对象不处理键盘信息"/>
    	</Control>
    	<Container parent="Control" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    	</Container>
    	<VerticalLayout parent="Container" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="sepheight" default="0" type="INT" comment="分隔符高度,正负表示分隔符在顶部还是底部,如(4)"/>
    		<Attribute name="sepimm" default="false" type="BOOL" comment="拖动分隔符是否立即改变大小,如(false)"/>
    	</VerticalLayout>
    	<HorizontalLayout parent="Container" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="sepwidth" default="0" type="INT" comment="分隔符宽,正负表示分隔符在左边还是右边,如(-4)"/>
    		<Attribute name="sepimm" default="false" type="BOOL" comment="拖动分隔符是否立即改变大小,如(false)"/>
    	</HorizontalLayout>
    	<TileLayout parent="Container" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="columns" default="1" type="INT" comment="列数,如(4)"/>
    		<Attribute name="itemsize" default="0,0" type="SIZE" comment="子项固定大小,如(128,128)"/>
    	</TileLayout>
    	<TabLayout parent="Container" notifies="setfocus killfocus timer menu tabselect windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="DWORD" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="selectedid" default="0" type="INT" comment="默认选中的页面id,如(0)"/>
    	</TabLayout>
    	<ActiveX parent="Control" notifies="setfocus killfocus timer menu showactivex windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="clsid" default="" type="STRING" comment="activex的clsid,如({8856F961-340A-11D0-A96B-00C04FD705A2})"/>
    		<Attribute name="modulename" default="" type="STRING" comment="activex从指定位置加载,如(flash/flash.ocx)"/>
    		<Attribute name="delaycreate" default="true" type="BOOL" comment="是否需要延迟创建activex,如(false)"/>
    	</ActiveX>
    	<WebBrowser parent="ActiveX" >
    		<Attribute name="homepage" default="" type="STRING" comment="默认首页" />
    		<Attribute name="autonavi" default="false" type="BOOL" comment="是否打开默认首页" />
    	</WebBrowser>
    	<Combo parent="Container" notifies="setfocus killfocus timer menu dropdown itemselect windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="textpadding" default="0,0,0,0" type="RECT" comment="文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="normalimage" default="" type="STRING" comment="普通状态图片"/>
    		<Attribute name="hotimage" default="" type="STRING" comment="鼠标悬浮的状态图片"/>
    		<Attribute name="pushedimage" default="" type="STRING" comment="鼠标按下的状态图片"/>
    		<Attribute name="focusedimage" default="" type="STRING" comment="获得焦点时的状态图片"/>
    		<Attribute name="disabledimage" default="" type="STRING" comment="禁用的状态图片"/>
    		<Attribute name="dropboxsize" default="0,150" type="STRING" comment="弹出框大小设置"/>
    		<Attribute name="itemfont" default="-1" type="INT" comment="item的字体id,如(0)"/>
    		<Attribute name="itemalign" default="center" type="STRING" comment="item对齐方式,取值left、right、center,如(center)"/>
    		<Attribute name="itemendellipsis" default="false" type="BOOL" comment="item句末显示不全是否使用...代替,如(true)"/>
    		<Attribute name="itemtextpadding" default="0,0,0,0" type="RECT" comment="item文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="itemtextcolor" default="0xFF000000" type="DWORD" comment="item字体颜色"/>
    		<Attribute name="itembkcolor" default="0x00000000" type="DWORD" comment="item背景颜色"/>
    		<Attribute name="itembkimage" default="" type="STRING" comment="item背景图片"/>
    		<Attribute name="itemaltbk" default="false" type="BOOL" comment="item是否使用隔行交替背景"/>
    		<Attribute name="itemselectedtextcolor" default="0xFF000000" type="DWORD" comment="item被选中时的字体颜色"/>
    		<Attribute name="itemselectedbkcolor" default="0xFFC1E3FF" type="DWORD" comment="item被选中时的背景颜色"/>
    		<Attribute name="itemselectedimage" default="" type="STRING" comment="item被选中时的背景图片"/>
    		<Attribute name="itemhottextcolor" default="0xFF000000" type="DWORD" comment="item鼠标悬浮时的字体颜色"/>
    		<Attribute name="itemhotbkcolor" default="0xFFE9F5FF" type="DWORD" comment="item鼠标悬浮时的背景颜色"/>
    		<Attribute name="itemhotimage" default="" type="STRING" comment="item鼠标悬浮时的背景图片"/>
    		<Attribute name="itemdisabledtextcolor" default="0xFFCCCCCC" type="DWORD" comment="item禁用时的字体颜色"/>
    		<Attribute name="itemdisabledbkcolor" default="0xFFFFFFFF" type="DWORD" comment="item禁用时的背景颜色"/>
    		<Attribute name="itemdisabledimage" default="" type="STRING" comment="item禁用时的背景图片"/>
    		<Attribute name="itemlinecolor" default="0x00000000" type="DWORD" comment="item行分割线颜色"/>
    		<Attribute name="itemshowhtml" default="false" type="BOOL" comment="item是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="multiexpanding" default="false" type="BOOL" comment="是否支持多个item同时打开,如(false)"/>
    	</Combo>
    	<Label parent="Control" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、center、top、bottom,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不全是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="0,0,0,0" type="RECT" comment="文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="enabledeffect" default="false" type="BOOL" comment="是否使用字体特效,使用下面文字特效属性必须该属性设置为true方有效"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字横向对齐方式,取值left、center、right"/>
    		<Attribute name="valign" default="center" type="STRING" comment="文字纵向对齐方式,取值top、center、bottom"/>
    		<Attribute name="rhaa" default="0" type="STRING" comment="字体质量0-5"/>
    		<Attribute name="enabledstroke" default="false" type="BOOL" comment="是否使用描边效果"/>
    		<Attribute name="strokecolor" default="0x00000000" type="STRING" comment="字体描边的颜色"/>
    		<Attribute name="transstroke" default="255" type="STRING" comment="字体描边的颜色透明度 0-255"/>
    		<Attribute name="enabledshadow" default="false" type="BOOL" comment="是否使用阴影效果"/>
    		<Attribute name="gradientangle" default="0" type="INT" comment="渐变色渲染角度"/>
    		<Attribute name="gradientlength" default="0" type="INT" comment="渐变距离"/>
    		<Attribute name="textcolor1" default="0x00000000" type="STRING" comment="字体渐变色"/>
    		<Attribute name="textshadowcolora" default="0xff000000" type="STRING" comment="字体阴影渐变色"/>
    		<Attribute name="textshadowcolorb" default="0xff000000" type="STRING" comment="字体阴影渐变色"/>
    		<Attribute name="transshadow" default="100" type="INT" comment="阴影透明度"/>
    		<Attribute name="transshadow1" default="100" type="INT" comment="阴影透明度"/>
    		<Attribute name="transtext" default="100" type="INT" comment="字体色彩透明度"/>
    		<Attribute name="transtext1" default="100" type="INT" comment="字体色彩透明度"/>
    	</Label>
    	<Button parent="Label" notifies="setfocus killfocus timer menu click windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、center、top、button,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不完是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="0,0,0,0" type="RECT" comment="文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="normalimage" default="" type="STRING" comment="普通状态图片"/>
    		<Attribute name="hotimage" default="" type="STRING" comment="鼠标悬浮的状态图片"/>
    		<Attribute name="pushedimage" default="" type="STRING" comment="鼠标按下的状态图片"/>
    		<Attribute name="focusedimage" default="" type="STRING" comment="获得焦点时的状态图片"/>
    		<Attribute name="disabledimage" default="" type="STRING" comment="禁用的状态图片"/>
    		<Attribute name="hottextcolor" default="0x00000000" type="DWORD" comment="鼠标悬浮字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    		<Attribute name="pushedtextcolor" default="0x00000000" type="DWORD" comment="鼠标按下字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    		<Attribute name="focusedtextcolor" default="0x00000000" type="DWORD" comment="获得焦点字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    	</Button>
    	<Option parent="Button" notifies="setfocus killfocus timer menu click selectchanged windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、center、top、button,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不完是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="0,0,0,0" type="RECT" comment="文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="normalimage" default="" type="STRING" comment="普通状态图片"/>
    		<Attribute name="hotimage" default="" type="STRING" comment="鼠标悬浮的状态图片"/>
    		<Attribute name="pushedimage" default="" type="STRING" comment="鼠标按下的状态图片"/>
    		<Attribute name="focusedimage" default="" type="STRING" comment="获得焦点时的状态图片"/>
    		<Attribute name="disabledimage" default="" type="STRING" comment="禁用的状态图片"/>
    		<Attribute name="selectedimage" default="" type="STRING" comment="选中的状态图片"/>
    		<Attribute name="foreimage" default="" type="STRING" comment="前景图片"/>
    		<Attribute name="hottextcolor" default="0x00000000" type="DWORD" comment="鼠标悬浮字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    		<Attribute name="pushedtextcolor" default="0x00000000" type="DWORD" comment="鼠标按下字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    		<Attribute name="focusedtextcolor" default="0x00000000" type="DWORD" comment="获得焦点字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    		<Attribute name="selectedtextcolor" default="0x00000000" type="DWORD" comment="选中状态字体颜色,0表示不使用此颜色,如(0xFFFF0000)"/>
    		<Attribute name="group" default="" type="STRING" comment="所属组的名称,可不设"/>
    		<Attribute name="selected" default="false" type="BOOL" comment="是否选中"/>
    	</Option>
    	<Text parent="Label" notifies="setfocus killfocus timer menu link windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、center、top、button,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不完是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="2,0,2,0" type="RECT" comment="文字显示的边距,如(2,0,2,0)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    	</Text>
    	<Progress parent="Label" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="certer" type="STRING" comment="文字对齐方式,取值left、right、center、top、button,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不完是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="2,0,2,0" type="RECT" comment="文字显示的边距,如(2,0,2,0)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="foreimage" default="" type="STRING" comment="前景图片"/>
    		<Attribute name="hor" default="true" type="BOOL" comment="水平或垂直,如(true)"/>
    		<Attribute name="min" default="0" type="INT" comment="进度最小值,如(0)"/>
    		<Attribute name="max" default="100" type="INT" comment="进度最大值,如(100)"/>
    		<Attribute name="value" default="0" type="INT" comment="进度值,如(50)"/>
    		<Attribute name="isstretchfore" default="TRUE" type="BOOL" comment="指定前景图片是否缩放显示"/>
    	</Progress>
    	<Slider parent="Progress" notifies="setfocus killfocus timer menu valuechanged windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="center" type="STRING" comment="文字对齐方式,取值left、right、center、top、button,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不完是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="2,0,2,0" type="RECT" comment="文字显示的边距,如(2,0,2,0)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="foreimage" default="" type="STRING" comment="前景图片"/>
    		<Attribute name="hor" default="true" type="BOOL" comment="水平或垂直,如(true)"/>
    		<Attribute name="min" default="0" type="INT" comment="进度最小值,如(0)"/>
    		<Attribute name="max" default="100" type="INT" comment="进度最大值,如(100)"/>
    		<Attribute name="value" default="0" type="INT" comment="进度值,如(50)"/>
    		<Attribute name="thumbimage" default="" type="STRING" comment="拖动滑块普通状态图片"/>
    		<Attribute name="thumbhotimage" default="" type="STRING" comment="拖动滑块鼠标悬浮状态图片"/>
    		<Attribute name="thumbpushedimage" default="" type="STRING" comment="拖动滑块鼠标按下状态图片"/>
    		<Attribute name="thumbsize" default="10,10" type="SIZE" comment="拖动滑块大小,如(10,10)"/>
    		<Attribute name="step" default="1" type="INT" comment="进度步长,如(1)"/>
    	</Slider>
    	<Edit parent="Label" notifies="setfocus killfocus timer menu return textchanged windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、center、top、button,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不完是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="disabledtextcolor" default="0x00000000" type="DWORD" comment="disabled字体颜色,0表示使用默认disabled字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="0,0,0,0" type="RECT" comment="文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="readonly" default="false" type="BOOL" comment="是否只读,如(false)"/>
    		<Attribute name="password" default="false" type="BOOL" comment="是否显示密码字符,如(false)"/>
    		<Attribute name="maxchar" default="255" type="INT" comment="输入字符最大长度,如(100)"/>
    		<Attribute name="normalimage" default="" type="STRING" comment="普通状态图片"/>
    		<Attribute name="hotimage" default="" type="STRING" comment="鼠标悬浮状态图片"/>
    		<Attribute name="focusedimage" default="" type="STRING" comment="获得焦点状态图片"/>
    		<Attribute name="disabledimage" default="" type="STRING" comment="禁用状态图片"/>
    		<Attribute name="nativebkcolor" default="0x00000000" type="DWORD" comment="windows原生edit控件的背景颜色,如(0xFFFFFFFF)"/>
    	</Edit>
    	<ScrollBar parent="Control" notifies="timer menu scrolled windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="button1normalimage" default="" type="STRING" comment="左或上按钮普通状态图片"/>
    		<Attribute name="button1hotimage" default="" type="STRING" comment="左或上按钮鼠标悬浮状态图片"/>
    		<Attribute name="button1pushedimage" default="" type="STRING" comment="左或上按钮鼠标按下状态图片"/>
    		<Attribute name="button1disabledimage" default="" type="STRING" comment="左或上按钮禁用状态图片"/>
    		<Attribute name="button2normalimage" default="" type="STRING" comment="右或下按钮普通状态图片"/>
    		<Attribute name="button2hotimage" default="" type="STRING" comment="右或下按钮鼠标悬浮状态图片"/>
    		<Attribute name="button2pushedimage" default="" type="STRING" comment="右或下按钮鼠标按下状态图片"/>
    		<Attribute name="button2disabledimage" default="" type="STRING" comment="右或下按钮禁用状态图片"/>
    		<Attribute name="thumbnormalimage" default="" type="STRING" comment="滑块普通状态图片"/>
    		<Attribute name="thumbhotimage" default="" type="STRING" comment="滑块鼠标悬浮状态图片"/>
    		<Attribute name="thumbpushedimage" default="" type="STRING" comment="滑块鼠标按下状态图片"/>
    		<Attribute name="thumbdisabledimage" default="" type="STRING" comment="滑块禁用状态图片"/>
    		<Attribute name="railnormalimage" default="" type="STRING" comment="滑块中间标识普通状态图片"/>
    		<Attribute name="railhotimage" default="" type="STRING" comment="滑块中间标识鼠标悬浮状态图片"/>
    		<Attribute name="railpushedimage" default="" type="STRING" comment="滑块中间标识鼠标按下状态图片"/>
    		<Attribute name="raildisabledimage" default="" type="STRING" comment="滑块中间标识禁用状态图片"/>
    		<Attribute name="bknormalimage" default="" type="STRING" comment="背景普通状态图片"/>
    		<Attribute name="bkhotimage" default="" type="STRING" comment="背景鼠标悬浮状态图片"/>
    		<Attribute name="bkpushedimage" default="" type="STRING" comment="背景鼠标按下状态图片"/>
    		<Attribute name="bkdisabledimage" default="" type="STRING" comment="背景禁用状态图片"/>
    		<Attribute name="hor" default="true" type="BOOL" comment="水平或垂直,如(true)"/>
    		<Attribute name="linesize" default="8" type="INT" comment="滚动一行的大小,如(8)"/>
    		<Attribute name="range" default="100" type="INT" comment="滚动范围,如(100)"/>
    		<Attribute name="value" default="0" type="INT" comment="滚动位置,如(0)"/>
    		<Attribute name="showbutton1" default="true" type="BOOL" comment="是否显示左或上按钮,如(true)"/>
    		<Attribute name="showbutton2" default="true" type="BOOL" comment="是否显示右或下按钮,如(true)"/>
    	</ScrollBar>
    	<List parent="VerticalLayout" notifies="setfocus killfocus timer menu itemselect windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="sepheight" default="0" type="INT" comment="分隔符高度,正负表示分隔符在顶部还是底部,如(4)"/>
    		<Attribute name="sepimm" default="false" type="BOOL" comment="拖动分隔符是否立即改变大小,如(false)"/>
    		<Attribute name="header" default="true" type="BOOL" comment="是否显示表头,如(true)"/>
    		<Attribute name="headerbkimage" default="" type="STRING" comment="表头背景图片"/>
    		<Attribute name="scrollselect" default="false" type="BOOL" comment="是否随滚动改变选中项,如(false)"/>
    		<Attribute name="itemfont" default="-1" type="INT" comment="item的字体id,如(0)"/>
    		<Attribute name="itemalign" default="center" type="STRING" comment="item对齐方式,取值left、right、center,如(center)"/>
    		<Attribute name="itemendellipsis" default="false" type="BOOL" comment="item句末显示不全是否使用...代替,如(true)"/>
    		<Attribute name="itemtextpadding" default="0,0,0,0" type="RECT" comment="item文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="itemtextcolor" default="0xFF000000" type="DWORD" comment="item字体颜色"/>
    		<Attribute name="itembkcolor" default="0x00000000" type="DWORD" comment="item背景颜色"/>
    		<Attribute name="itembkimage" default="" type="STRING" comment="item背景图片"/>
    		<Attribute name="itemaltbk" default="false" type="BOOL" comment="item是否使用隔行交替背景"/>
    		<Attribute name="itemselectedtextcolor" default="0xFF000000" type="DWORD" comment="item被选中时的字体颜色"/>
    		<Attribute name="itemselectedbkcolor" default="0xFFC1E3FF" type="DWORD" comment="item被选中时的背景颜色"/>
    		<Attribute name="itemselectedimage" default="" type="STRING" comment="item被选中时的背景图片"/>
    		<Attribute name="itemhottextcolor" default="0xFF000000" type="DWORD" comment="item鼠标悬浮时的字体颜色"/>
    		<Attribute name="itemhotbkcolor" default="0xFFE9F5FF" type="DWORD" comment="item鼠标悬浮时的背景颜色"/>
    		<Attribute name="itemhotimage" default="" type="STRING" comment="item鼠标悬浮时的背景图片"/>
    		<Attribute name="itemdisabledtextcolor" default="0xFFCCCCCC" type="DWORD" comment="item禁用时的字体颜色"/>
    		<Attribute name="itemdisabledbkcolor" default="0xFFFFFFFF" type="DWORD" comment="item禁用时的背景颜色"/>
    		<Attribute name="itemdisabledimage" default="" type="STRING" comment="item禁用时的背景图片"/>
    		<Attribute name="itemlinecolor" default="0x00000000" type="DWORD" comment="item行分割线颜色"/>
    		<Attribute name="itemshowhtml" default="false" type="BOOL" comment="item是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="multiexpanding" default="false" type="BOOL" comment="是否支持多个item同时打开,如(false)"/>
    	</List>
    	<ListHeader parent="HorizontalLayout" notifies="setfocus killfocus timer windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="sepwidth" default="0" type="INT" comment="分隔符宽,正负表示分隔符在左边还是右边,如(-4)"/>
    		<Attribute name="sepimm" default="false" type="BOOL" comment="拖动分隔符是否立即改变大小,如(false)"/>
    	</ListHeader>
    	<ListHeaderItem parent="Control" notifies="setfocus killfocus timer headerclick windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="16" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="dragable" default="true" type="BOOL" comment="是否可拖动改变大小,如(true)"/>
    		<Attribute name="sepwidth" default="4" type="INT" comment="分隔符宽,如(4)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、cente,如(center)"/>
    		<Attribute name="endellipsis" default="false" type="BOOL" comment="句末显示不全是否使用...代替,如(true)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="字体颜色,0表示使用默认字体颜色,如(0xFFFF0000)"/>
    		<Attribute name="textpadding" default="2,0,2,0" type="RECT" comment="文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="showhtml" default="false" type="BOOL" comment="是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="normalimage" default="" type="STRING" comment="普通状态图片"/>
    		<Attribute name="hotimage" default="" type="STRING" comment="鼠标悬浮的状态图片"/>
    		<Attribute name="pushedimage" default="" type="STRING" comment="鼠标按下的状态图片"/>
    		<Attribute name="focusedimage" default="" type="STRING" comment="获得焦点时的状态图片"/>
    		<Attribute name="sepimage" default="" type="STRING" comment="拖动条图片"/>
    	</ListHeaderItem>
    	<ListLabelElement parent="Control" notifies="setfocus killfocus timer itemactivate itemclick windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="selected" default="false" type="BOOL" comment="是否选中,如(true)"/>
    	</ListLabelElement>
    	<ListTextElement parent="ListLabelElement" notifies="setfocus killfocus timer itemactivate itemclick link windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="selected" default="false" type="BOOL" comment="是否选中,如(true)"/>
    	</ListTextElement>
    	<ListContainerElement parent="Container" notifies="setfocus killfocus timer itemactivate itemclick itemexpanded itemcollapsed windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="selected" default="false" type="BOOL" comment="是否选中,如(true)"/>
    	</ListContainerElement>
    	<RichEdit parent="Container" notifies="setfocus killfocus timer menu return windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="0" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bordervisible" default="false" type="BOOL" comment="是否显示边框"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="autovscroll" default="false" type="BOOL" comment="是否随输入竖向滚动,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="autohscroll" default="false" type="BOOL" comment="是否随输入横向滚动,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="wanttab" default="true" type="BOOL" comment="是否接受tab按键消息,如(true)"/>
    		<Attribute name="wantreturn" default="true" type="BOOL" comment="是否接受return按键消息,如(true)"/>
    		<Attribute name="wantctrlreturn" default="true" type="BOOL" comment="是否接受ctrl+return按键消息,如(true)"/>
    		<Attribute name="transparent" default="true" type="BOOL" comment="是否背景透明,如(true)"/>
    		<Attribute name="rich" default="true" type="BOOL" comment="是否使用富格式,如(true)"/>
    		<Attribute name="multiline" default="true" type="BOOL" comment="是否使用多行,如(true)"/>
    		<Attribute name="readonly" default="false" type="BOOL" comment="是否只读,如(false)"/>
    		<Attribute name="password" default="false" type="BOOL" comment="是否显示密码符,如(true)"/>
    		<Attribute name="align" default="left" type="STRING" comment="文字对齐方式,取值left、right、cente,如(center)"/>
    		<Attribute name="font" default="-1" type="INT" comment="字体id,如(0)"/>
    		<Attribute name="textcolor" default="0xFF000000" type="DWORD" comment="字体颜色,如(0xFFFF0000)"/>
    	</RichEdit>
    	<TreeView parent="List" notifies="selectchanged setfocus killfocus timer menu itemselect windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="sepheight" default="0" type="INT" comment="分隔符高度,正负表示分隔符在顶部还是底部,如(4)"/>
    		<Attribute name="sepimm" default="false" type="BOOL" comment="拖动分隔符是否立即改变大小,如(false)"/>
    		<Attribute name="header" default="true" type="BOOL" comment="是否显示表头,如(true)"/>
    		<Attribute name="headerbkimage" default="" type="STRING" comment="表头背景图片"/>
    		<Attribute name="scrollselect" default="false" type="BOOL" comment="是否随滚动改变选中项,如(false)"/>
    		<Attribute name="itemfont" default="-1" type="INT" comment="item的字体id,如(0)"/>
    		<Attribute name="itemalign" default="center" type="STRING" comment="item对齐方式,取值left、right、center,如(center)"/>
    		<Attribute name="itemendellipsis" default="false" type="BOOL" comment="item句末显示不全是否使用...代替,如(true)"/>
    		<Attribute name="itemtextpadding" default="0,0,0,0" type="RECT" comment="item文字显示的边距,如(2,2,2,2)"/>
    		<Attribute name="itemtextcolor" default="0xFF000000" type="DWORD" comment="item字体颜色"/>
    		<Attribute name="itembkcolor" default="0x00000000" type="DWORD" comment="item背景颜色"/>
    		<Attribute name="itembkimage" default="" type="STRING" comment="item背景图片"/>
    		<Attribute name="itemaltbk" default="false" type="BOOL" comment="item是否使用隔行交替背景"/>
    		<Attribute name="itemselectedtextcolor" default="0xFF000000" type="DWORD" comment="item被选中时的字体颜色"/>
    		<Attribute name="itemselectedbkcolor" default="0xFFC1E3FF" type="DWORD" comment="item被选中时的背景颜色"/>
    		<Attribute name="itemselectedimage" default="" type="STRING" comment="item被选中时的背景图片"/>
    		<Attribute name="itemhottextcolor" default="0xFF000000" type="DWORD" comment="item鼠标悬浮时的字体颜色"/>
    		<Attribute name="itemhotbkcolor" default="0xFFE9F5FF" type="DWORD" comment="item鼠标悬浮时的背景颜色"/>
    		<Attribute name="itemhotimage" default="" type="STRING" comment="item鼠标悬浮时的背景图片"/>
    		<Attribute name="itemdisabledtextcolor" default="0xFFCCCCCC" type="DWORD" comment="item禁用时的字体颜色"/>
    		<Attribute name="itemdisabledbkcolor" default="0xFFFFFFFF" type="DWORD" comment="item禁用时的背景颜色"/>
    		<Attribute name="itemdisabledimage" default="" type="STRING" comment="item禁用时的背景图片"/>
    		<Attribute name="itemlinecolor" default="0x00000000" type="DWORD" comment="item行分割线颜色"/>
    		<Attribute name="itemshowhtml" default="false" type="BOOL" comment="item是否使用类html富文本绘制,如(false)"/>
    		<Attribute name="multiexpanding" default="false" type="BOOL" comment="是否支持多个item同时打开,如(false)"/>
    		<!--TreeView 私有属性-->
    		<Attribute name="multipleitem" default="true" type="BOOL" comment="是否允许item多选"/>
    		<Attribute name="itemcheckimgsize" default="0,0" type="SIZE" comment="Item的复选框图片大小,如(2,2)"/>
    		<Attribute name="itemiconimgsize" default="0,0" type="SIZE" comment="Item的图标大小,如(2,2)"/>
    
    		<Attribute name="visiblefolderbtn" default="true" type="BOOL" comment="是否显示展开与收缩按钮对象"/>
    		<Attribute name="visiblecheckbtn" default="false" type="BOOL" comment="是否显示复选框对象"/>
    		<Attribute name="itemminwidth" default="0" type="UINT" comment="设置Item的最小宽度,当hscrollbar为真且itemminwidth大于TreeView宽度时才会显示横向滚动条"/>
    		<Attribute name="itemtextcolor" default="0x00000000" type="DWORD" comment="item文本颜色"/>
    		<Attribute name="itemhottextcolor" default="0x00000000" type="DWORD" comment="鼠标进入item时文本颜色"/>
    		<Attribute name="selitemtextcolor" default="0x00000000" type="DWORD" comment="item被选中时文本颜色"/>
    		<Attribute name="selitemhottextcolor" default="0x00000000" type="DWORD" comment="item被选中时且鼠标进入时的文本颜色"/>
    	</TreeView>
    	<TreeNode parent="ListContainerElement" notifies="setfocus killfocus timer itemactivate itemclick itemexpanded itemcollapsed windowinit(root)">
    		<Attribute name="name" default="" type="STRING" comment="控件名字,同一窗口内必须唯一,如(testbtn)"/>
    		<Attribute name="pos" default="0,0,0,0" type="RECT" comment="位置,如果为float控件则指定位置和大小,否则只指定大小,如(0,0,100,100)"/>
    		<Attribute name="padding" default="0,0,0,0" type="RECT" comment="外边距,如(2,2,2,2)"/>
    		<Attribute name="bkcolor" default="0x00000000" type="DWORD" comment="背景颜色,如(0xFFFF0000)"/>
    		<Attribute name="bkcolor2" default="0x00000000" type="DWORD" comment="背景渐变色2,和bkcolor配合使用,如(0xFFFFFF00)"/>
    		<Attribute name="bkcolor3" default="0x00000000" type="DWORD" comment="背景渐变色3,和bkcolor、bkcolor2配合使用,如(0xFFFF00FF)"/>
    		<Attribute name="bordercolor" default="0x00000000" type="DWORD" comment="边框颜色,如(0xFF000000)"/>
    		<Attribute name="focusbordercolor" default="0x00000000" type="DWORD" comment="获得焦点时边框的颜色,如(0xFFFF0000)"/>
    		<Attribute name="colorhsl" default="false" type="BOOL" comment="本控件的颜色是否随窗口的hsl变化而变化,如(false)"/>
    		<Attribute name="bordersize" default="1" type="INT" comment="边框大小,如(1)"/>
    		<Attribute name="borderround" default="0,0" type="SIZE" comment="边框圆角半径,如(2,2)"/>
    		<Attribute name="bkimage" default="" type="STRING" comment="背景图片,如(bk.bmp或file='aaa.jpg' res='' restype='0' dest='0,0,0,0' source='0,0,0,0' corner='0,0,0,0' mask='#FF0000' fade='255' hole='false' xtiled='false' ytiled='false')"/>
    		<Attribute name="width" default="0" type="INT" comment="控件预设的宽度,如(100)"/>
    		<Attribute name="height" default="0" type="INT" comment="控件预设的高度,如(30)"/>
    		<Attribute name="minwidth" default="0" type="INT" comment="控件的最小宽度,如(100)"/>
    		<Attribute name="minheight" default="0" type="INT" comment="控件的最小高度,如(30)"/>
    		<Attribute name="maxwidth" default="9999" type="INT" comment="控件的最大宽度,如(100)"/>
    		<Attribute name="maxheight" default="9999" type="INT" comment="控件的最大高度,如(30)"/>
    		<Attribute name="text" default="" type="STRING" comment="显示文本,如(测试文本)"/>
    		<Attribute name="tooltip" default="" type="STRING" comment="鼠标悬浮提示,如(请在这里输入你的密码)"/>
    		<Attribute name="userdata" default="" type="STRING" comment="自定义标识"/>
    		<Attribute name="enabled" default="true" type="BOOL" comment="是否可以响应用户操作,如(true)"/>
    		<Attribute name="mouse" default="true" type="BOOL" comment="本控件是否可以响应鼠标操作,如(true)"/>
    		<Attribute name="mousechild" default="true" type="BOOL" comment="本控件的子控件是否可以响应用户操作,如(true)"/>
    		<Attribute name="visible" default="true" type="BOOL" comment="是否可见,如(true)"/>
    		<Attribute name="float" default="false" type="BOOL" comment="是否使用绝对定位,如(true)"/>
    		<Attribute name="shortcut" default="" type="CHAR" comment="对应的快捷键,如(P)"/>
    		<Attribute name="menu" default="false" type="BOOL" comment="是否需要右键菜单,如(true)"/>
    		<Attribute name="inset" default="0,0,0,0" type="RECT" comment="容器的内边距,如(2,2,2,2)"/>
    		<Attribute name="vscrollbar" default="false" type="BOOL" comment="是否使用竖向滚动条,如(true)"/>
    		<Attribute name="hscrollbar" default="false" type="BOOL" comment="是否使用横向滚动条,如(true)"/>
    		<Attribute name="childpadding" default="0" type="INT" comment="子控件之间的额外距离,如(4)"/>
    		<Attribute name="selected" default="false" type="BOOL" comment="是否选中,如(true)"/>
    		<!--TreeNode 私有属性-->
    		<Attribute name="horizattr" default="" type="STRING" comment="item虚线、复选框、展开与收缩、文本按钮等对象容器属性设置,格式参考Default元素的属性设置"/>
    		<Attribute name="dotlineattr" default="" type="STRING" comment="item虚线对象属性设置,格式参考Default元素的属性设置"/>
    		<Attribute name="folderattr" default="" type="STRING" comment="item展开与收缩按钮对象属性设置,格式参考Default元素的属性设置"/>
    		<Attribute name="checkboxattr" default="" type="STRING" comment="item复选框对象属性设置,格式参考Default元素的属性设置"/>
    		<Attribute name="itemattr" default="" type="STRING" comment="item按钮对象属性设置,格式参考Default元素的属性设置"/>
    		<Attribute name="textcolor" default="0x00000000" type="DWORD" comment="item文本颜色"/>
    		<Attribute name="texthotcolor" default="0x00000000" type="DWORD" comment="鼠标进入item时文本颜色"/>
    		<Attribute name="selitemtextcolor" default="0x00000000" type="DWORD" comment="item被选中时文本颜色"/>
    		<Attribute name="selhotitemtextcolor" default="0x00000000" type="DWORD" comment="item被选中时且鼠标进入时的文本颜色"/>
    	</TreeNode>
    	<GifAnim parent="Control" notifies="setfocus killfocus timer menu windowinit(root)">
    		<Attribute name="bkimage" default="" type="STRING" comment="Gif动画图片路径(不支持source等属性设置)"/>
    		<Attribute name="autoplay" default="true" type="BOOL" comment="是否自动播放GIF动画"/>
    		<Attribute name="autosize" default="false" type="BOOL" comment="是否根据图片自动设置控件大小(开启后width和height属性失效)"/>
    	</GifAnim>
    </Controls>

     


  9. Make sure you have already build duilib's dll or static lib

    You can use dll or static lib to build your exe application, in this tutorial, I will use static lib

     

    1. create a new project. notice: application type is window not console! so let's create a empty new project.

     

    2. Right click project. open setting dialog.

            - [Configuration Properties -> C/C++ -> General] set Additional include DirectoriesD:\duilib\include\DuiLib

            - [Configuration Properties -> C/C++ -> Preprocessor] set Preprocessor DefinitionsUILIB_STATIC

            - [Configuration Properties -> C/C++ -> Code Generation] set Runtime LibrayMulti-threaded(/MT)

            - [Configuration Properties -> Linker -> General] set Additional Library DirectoriesD:\duilib\lib\static

            - [Configuration Properties -> Linker -> Input] set Additional Dependenciesduilib.lib

     

    3.make sure Configuration Properties -> Linker -> System : SubSystem's value is : Windows (/SUBSYSTEM:WINDOWS)

     

    4. Click Apply, click Ok close dialog.

     

    5.make sure you have duilib.lib in D:\duilib\lib\static (you can from http://thinkh5.com/topic/123-3-编译-duilib-静态库/ to learn how to build duilib's static lib (duilib.lib) )

     

    OK, let's write some code.

     

    6. add a new file named: app.h , copy blow code and past to your vs editor:

    #pragma once
    
    #include "UIlib.h"
    using namespace DuiLib;

    7. add a new file named app.cpp, code:

    #include "app.h"
    
    class MainWndFrame : public WindowImplBase
    {
    protected:
    	virtual CDuiString GetSkinFolder() override;
    	virtual CDuiString GetSkinFile() override;
    	virtual LPCTSTR GetWindowClassName(void) const override;
    
    public:
    	static const LPCTSTR kClassName;
    	static const LPCTSTR kMainWndFrame;
    };
    
    DuiLib::CDuiString MainWndFrame::GetSkinFolder()
    {
    	return m_PaintManager.GetInstancePath();
    }
    
    DuiLib::CDuiString MainWndFrame::GetSkinFile()
    {
    	return kMainWndFrame;
    }
    
    LPCTSTR MainWndFrame::GetWindowClassName(void) const
    {
    	return kClassName;
    }
    
    const LPCTSTR MainWndFrame::kClassName = _T("main_wnd");
    const LPCTSTR MainWndFrame::kMainWndFrame = _T("main_wnd.xml");
    
    int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
        _In_opt_ HINSTANCE hPrevInstance,
        _In_ LPWSTR    lpCmdLine,
        _In_ int       nCmdShow)
    {
        UNREFERENCED_PARAMETER(hPrevInstance);
        UNREFERENCED_PARAMETER(lpCmdLine);
    
    	// 设置窗口关联的实例
    	CPaintManagerUI::SetInstance(hInstance);
    
    	// 设置皮肤的默认路径
    	CPaintManagerUI::SetCurrentPath(CPaintManagerUI::GetInstancePath());
    	CPaintManagerUI::SetResourcePath(_T("theme"));
    
    	// 创建窗口
    	MainWndFrame* pMainWndFrame = new MainWndFrame;
    	pMainWndFrame->Create(nullptr, MainWndFrame::kClassName, UI_WNDSTYLE_DIALOG, 0);
    	pMainWndFrame->CenterWindow();
    	pMainWndFrame->ShowWindow();
    
    	CPaintManagerUI::MessageLoop();
    
    	if (nullptr != pMainWndFrame)
    	{
    		delete pMainWndFrame;
    	}
    
        return 0;
    }

    8. not harry to build or run the project, you may notice the string "main_wnd.xml" , whereis this xml file? it's in
     

    D:\duilib\project\duilib_hello\Release\theme\main_wnd.xml

    and it's code is:

    <?xml version="1.0" encoding="UTF-8"?>
    <Window size="640,480" caption="0,0,0,35">
    	<Font id="0" name="Courier New Bold" size="22" bold="false"/>
    	<VerticalLayout>
    		<HorizontalLayout bkcolor="#FFff1a1a"/>
    		<HorizontalLayout>
    			<Button font="0" text="Hello DuQingnian!" bkcolor="#FF00b33c"/>
    		</HorizontalLayout>
    		<HorizontalLayout bkcolor="#FFffd633"/>
    	</VerticalLayout>
    </Window>

    OK, now we can click build and run

    you will get this:

    preview.png

     

    A small question, how to close this application? you may notice there's no close ico or close button.

    So, how to close this application?

    You can click the red square in vs editor to close it

     

    close.png

     

    OK , this hello world tutorial is complete! try it yourself!


  10. 静态库要自己手动改一些东西。官方的项目目录下有一个 DuiLib_Static.vcxproj 文件,这就是静态库的配置文件,但是其缺少一个 DuiLib_Static.vcxproj.filters 的描述文件。不过没关系,我们复制一份 DuiLib.vcxproj.filters 然后改名为 DuiLib_Static.vcxproj.filters 就可以用了,后缀为 .filters 的文件主要作用就是描述项目在 VS 开发环境中的目录结构信息,LIB 和 DLL 的目录结构是一样的,所以用一个文件不同名字即可。复制以后如下

    static_copy.png

    然后切换到 VS 中,我们把 DuiLib_Static 这个项目导入到解决方案中。

    import_static.png

    同样为了保持命名习惯,我还是把项目名称改成了小写的 duilib_lib

    change_name.png

    我们看到由于这个静态的项目已经很久没有更新了,还是 VS2012 创建的项目,所以根据你的需要改成 VS2022。同样是项目右键->属性,将所有配置的平台工具集修改为你需要的工具集即可。

    change_to_vs2022.png

    对比一下动态库的项目和静态库的项目,发现静态库的 Utils 缺少一个 WndShadow.h 和 WndShadow.cpp 文件,我们给静态库工程导入这两个文件就可以了。不然后面用到的时候会提示没有导出这里面的相关功能。

    WndShadow.png

    add_menu.png

    select_file.png

    导入成功后把 .h 文件和 .cpp 文件分别移动到 Utils 目录下即可。

    confirm_file.png

    此时生成一下即可生成出可用的静态库了。

    succ_tip.png


  11. 1.enter duilib source code folder, eg: D:\duilib\include\DuiLib

    2.copy D:\duilib\include\DuiLib\DuiLib_Static.vcxproj to D:\duilib\include\DuiLib\DuiLib_Static.vcxproj.filters

    3.double click DuiLib_Static.vcxproj using Visual Studio 2022

    4.setting project

    5.click Build menu

    6.success generated duilib.lib file.


  12. 1.enter duilib source code folder, the folder looks like this : D:\duilib\include\DuiLib, and the folder's content looks like this:

    duilib_folder.png

    2.double click DuiLib.vcxproj using Visual Studio 2022 (you can use any version Visual Studio, vs203 or vs2015 or vs2017 or vs2019)

    right click project and config it

    vs_config.png

    click apply or click ok.close config dialog.

    3.DO NOT run project, just click Build menu in top menu bar.

    4.you will get this message:

    1>XUnzip.cpp
    1>D:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppBuild.targets(1389,5): warning MSB8012: TargetPath(D:\duilib\include\DuiLib\Build\Release\DuiLib.dll) does not match the Linker's OutputFile property value (D:\duilib\include\bin\DuiLib.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
    1>   Creating library ../Lib/DuiLib.lib and object ../Lib/DuiLib.exp
    1>DuiLib.vcxproj -> D:\duilib\include\DuiLib\Build\Release\DuiLib.dll
    1>Done building project "DuiLib.vcxproj".
    ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
    ========== Build started at 3:34 AM and took 27.846 seconds ==========

    5.the dll generated success, location is : D:\duilib\include\DuiLib\Build\Release\DuiLib.dll

    dll_succ.png


  13. 最新版本直链 2023年07月04日 11:24:06
    Windows:https://www.vmware.com/go/getworkstation-win
    Linux:https://www.vmware.com/go/getworkstation-linux

    系统要求
    VM17:硬件要求高,Windows 10 或更高版64位
    VM16:硬件要求高,Windows 10 或更高版64位
    VM15:硬件要求中,Windows 7 或更高版64位
    VM12:硬件要求低,Windows 7 或更高版64位
    VM10:Windows XP 或更高版32位和64位旧版
    注意:
    VM17版本已经砍掉了虚拟磁盘映射功能,如果你要用这个功能的话千万别下载
    VM16.1.2 是完美版,之后的版本,官方允许磁盘映射一次,再映射就报错了。
    VM14版本开始不支持某些旧的电脑硬件,会提示不支持或安装失败, 如遇到请退回12版本。


    【VMware Workstation 17】
    VMware Workstation v17.x 永久许可证激活密钥:
    MC60H-DWHD5-H80U9-6V85M-8280D
    4A4RR-813DK-M81A9-4U35H-06KND
    NZ4RR-FTK5H-H81C1-Q30QH-1V2LA
    JU090-6039P-08409-8J0QH-2YR7F
    4Y09U-AJK97-089Z0-A3054-83KLA
    4C21U-2KK9Q-M8130-4V2QH-CF810

    VMware Workstation 17.0.2 Pro for Windows        发布日期:        2023-04-25        文件大小: 607.7 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1702-WIN&productId=1376&rPId=104681
    下载地址:
    https://download3.vmware.com/software/WKST-1702-WIN/VMware-workstation-full-17.0.2-21581411.exe

    VMware Workstation 17.0.2 Pro for Linux                发布日期:        2023-04-25        文件大小: 513.94 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1702-LX&productId=1376&rPId=104682
    下载地址:
    https://download3.vmware.com/software/WKST-1702-LX/VMware-Workstation-Full-17.0.2-21581411.x86_64.bundle
    ---------分---------隔---------线---------
    【VMware Workstation 16】
    VMware Workstation v16.x 永久许可证激活密钥:
    ZF3R0-FHED2-M80TY-8QYGC-NPKYF
    YF390-0HF8P-M81RQ-2DXQE-M2UT6
    ZF71R-DMX85-08DQY-8YMNC-PPHV8
    110L3-9135J-M807A-08ARK-84V7L
    FF31K-AHZD1-H8ETZ-8WWEZ-WUUVA
    CV7T2-6WY5Q-48EWP-ZXY7X-QGUWD


    VMware Workstation 16.1.2 Pro for Windows        发布日期:        2021-05-18        文件大小: 621.29 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1612-WIN&productId=1038&rPId=98567
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-workstation-full-16.1.2-17966106.exe

    VMware Workstation 16.1.2 Pro for Linux                发布日期:        2021-05-18        文件大小: 502.98 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1612-LX&productId=1038&rPId=98568
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-16.1.2-17966106.x86_64.bundle



    VMware Workstation 16.2.5 Pro for Windows        发布日期:        2022-12-13        文件大小: 615.58 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1625-WIN&productId=1038&rPId=98567
    https://download3.vmware.com/software/WKST-1625-WIN/VMware-workstation-full-16.2.5-20904516.exe
    VMware Workstation 16.2.3 Pro for Windows        发布日期:        2022-03-10        文件大小: 615.43 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1623-WIN-NEW&productId=1038&rPId=98567
    https://download3.vmware.com/software/WKST-1623-WIN-New/VMware-workstation-full-16.2.3-19376536.exe
    ---------分---------隔---------线---------
    【VMware Workstation 15】
    VMware Workstation v15.x 永久许可证激活密钥:
    FC7D0-D1YDL-M8DXZ-CYPZE-P2AY6
    FC14U-4MW8L-081DP-E7WET-WQHFF
    GG71H-FDWDN-0884P-LPX79-QUHU2
    ZF1J2-29W8K-M859P-14XGG-NAKVA

    VMware Workstation 15.5.7 Pro for Windows        发布日期:        2020-11-19        文件大小: 552.28 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1557-WIN&productId=799&rPId=55775
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-workstation-full-15.5.7-17171714.exe

    VMware Workstation 15.5.7 Pro for Linux                发布日期:        2020-11-19        文件大小: 512.84 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1557-LX&productId=799&rPId=55776
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-15.5.7-17171714.x86_64.bundle
    ---------------分---------隔---------线---------------
    【VMware Workstation 14】
    VMware Workstation v14.x 永久许可证激活密钥:
    FF31K-AHZD1-H8ETZ-8WWEZ-WUUVA
    CV7T2-6WY5Q-48EWP-ZXY7X-QGUWD
    CG54H-D8D0H-H8DHY-C6X7X-N2KG6
    ZC3WK-AFXEK-488JP-A7MQX-XL8YF
    AC5XK-0ZD4H-088HP-9NQZV-ZG2R4
    ZC5XK-A6E0M-080XQ-04ZZG-YF08D
    ZY5H0-D3Y8K-M89EZ-AYPEG-MYUA8

    VMware Workstation 14.1.8 Pro for Windows        发布日期:        2019-11-12        文件大小: 487.14 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1418-WIN&productId=686&rPId=39186
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-workstation-full-14.1.8-14921873.exe

    VMware Workstation 14.1.7 Pro for Linux                发布日期:        2019-03-28        文件大小: 439.75 MB
    https://customerconnect.vmware.com/cn/downloads/details?downloadGroup=WKST-1417-LX&productId=686&rPId=39187
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-14.1.7-12989993.x86_64.bundle
    ---------分---------隔---------线---------
    【VMware Workstation 12】
    VMware Workstation v12.x 永久许可证激活密钥:
    VF5XA-FNDDJ-085GZ-4NXZ9-N20E6
    1F04Z-6D111-7Z029-AV0Q4-3AEH8
    GA1T2-4JF1P-4819Y-GDWEZ-XYAY8
    VY1DU-2VXDH-08DVQ-PXZQZ-P2KV8
    YG7XR-4GYEJ-4894Y-VFMNZ-YA296

    VMware Workstation 12 for Windows                        发行日期: 2018-01-10        文件大小: 400.86 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1259-WIN&productId=524&rPId=20848
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-workstation-full-12.5.9-7535481.exe

    VMware Workstation 12 for Linux                                发行日期: 2018-01-10        文件大小: 456.00 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1259-LX&productId=524&rPId=20849
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-12.5.9-7535481.x86_64.bundle
    ---------分---------隔---------线---------
    【VMware Workstation 11】
    VMware Workstation v11.x 永久许可证激活密钥:
    1F04Z-6D111-7Z029-AV0Q4-3AEH8
    AA5M8-8NGD3-M805Y-K5Q7G-X28E6
    YU7NK-4NX92-48EWY-QMNQX-MZUD8
    VF3M8-44X42-0850Q-4ZQXV-ZPUZ8
    VA3HR-49YEQ-M854P-0QZEC-NVAU6

    VMware Workstation 11 for Windows                        发行日期: 2016-05-12        文件大小: 303.11 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1114-WIN&productId=462&rPId=11037
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-workstation-full-11.1.4-3848939.exe

    VMware Workstation 11 for Linux                                发行日期: 2016-05-12        文件大小: 413.03 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1114-LX&productId=462&rPId=11037
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-11.1.4-3848939.x86_64.bundle
    ---------分---------隔---------线---------
    【VMware Workstation 10】支持32位系统
    VMware Workstation v10.x 永久许可证激活密钥:
    5F29M-48312-8ZDF9-A8A5K-2AM0Z
    JZ6WK-4529P-HZAA1-9RAG6-33JNR
    5F4EV-4Z0DP-XZHN9-0L95H-02V17

    VMware Workstation 10 for Windows                        发行日期: 2015-07-02        文件大小: 495.52 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1007-WIN&productId=362&rPId=8491
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-workstation-full-10.0.7-2844087.exe

    VMware Workstation 10 for Linux(32位)                发行日期: 2015-05-05        文件大小: 430.51 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1006-LX&productId=362&rPId=8490
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-10.0.6-2700073.i386.bundle

    VMware Workstation 10 for Linux(64位)                发行日期: 2015-05-05        文件大小: 403.18 MB
    https://my.vmware.com/cn/web/vmware/details?downloadGroup=WKST-1006-LX&productId=362&rPId=8490
    下载地址:
    https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-10.0.6-2700073.x86_64.bundle


  14. 打开vs2017,建立一个c++的控制台项目,删除默认的cpp文件下的所有文件

    输入下面代码:

    #define _CRT_SECURE_NO_WARNINGS
    
    #include <stdio.h>
    #include <string.h>
    #include <iostream>
    #include <event.h>
    #include <event2/http.h>
    #include <event2/http_struct.h>
    #include <event2/http_compat.h>
    #include <event2/event-config.h>
    using namespace std;
    
    int main(void) {
    	WSADATA wsa_data;
    	WSAStartup(0x0201, &wsa_data);
    	event_init();
    
    	struct evhttp *evHttp = evhttp_start("0.0.0.0", 8080);
    	if (evHttp == NULL) {
    		cout << "错误!";
    		getchar();
    		return 0;
    	}
    	evhttp_set_timeout(evHttp, 5);
    	evhttp_set_cb(evHttp, "/get", [](struct evhttp_request * req, void * data) {
    		size_t len = evbuffer_get_length(req->input_buffer);
    		cout << "req len:" << len;
    		evbuffer *respBuff = evbuffer_new();
    		evbuffer_add_printf(respBuff, "Hello ? World!");
    		evhttp_send_reply(req, HTTP_OK, "Client", respBuff);
    		evbuffer_free(respBuff);
    	}, NULL);
    
    	event_dispatch();
    	evhttp_free(evHttp);
    	return 0;
    }

    设置项目:

    vs_config_path.pngmtd.pnglib.png

    附加依赖:

    ws2_32.lib
    wsock32.lib
    libevent.lib
    libevent_extras.lib
    libevent_core.lib

    ----------

    编译-运行

    打开浏览器输入

    http://127.0.0.1:8080/get

    查看效果


  15. 1.修改

    C:\Users\duqingnian\libevent-2.1.11-stable\Makefile.nmake

    makefile.nmake.png

     

    2.修改

    C:\Users\duqingnian\libevent-2.1.11-stable\minheap-internal.h

    hfile.png

     

    然后打开:

    x86 Native Tools Command Prompt for VS 2017

    执行:

    nmake /f Makefile.nmake

    执行结束后,检查:C:\Users\duqingnian\libevent-2.1.11-stable文件夹下面是不是有一下三个lib文件

    libevent.lib
    libevent_extras.lib
    libevent_core.lib

    如果有,则为成功!


  16. 生成共钥、私钥命令

    .\openssl.exe genrsa -out rsa_private_key.pem 512
    .\openssl.exe rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
    .\openssl.exe pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out pkcs8_rsa_private_key.pem

     

×
×
  • 创建新的...

重要信息

注册必须使用2-8个中文汉字作为账号