码迷,mamicode.com
首页 > 其他好文 > 详细

DirectUI 学习笔记2-DUI HellowWorld程序

时间:2015-10-31 21:37:42      阅读:363      评论:0      收藏:0      [点我收藏+]

标签:

 

经过上一章的配置之后,我们有了duilib的环境,现在我们可以开始编写一个DUI程序。

如果你还不会如何下载与配置Duilib,请移步《DirectUI 学习笔记1-源码下载与环境配置

 

A:我们新建一个类去继承DUI提供给我们的基类

#include pragma once

#include <UIlib.h>   //如果你附加目录设置的正确,这里不会找不到
using namespace DuiLib;

//下面的预处理指令用来判断是否项目使用了unicode与对应的debug于release的对应lib库
#ifdef _DEBUG
#   ifdef _UNICODE
#       pragma comment(lib, "DuiLib_ud.lib")
#   else
#       pragma comment(lib, "DuiLib_d.lib")
#   endif
#else
#   ifdef _UNICODE
#       pragma comment(lib, "DuiLib_u.lib")
#   else
#       pragma comment(lib, "DuiLib.lib")
#   endif
#endif

class CMyDuiWnd : public CWindowWnd, public INotifyUI
{
public:
    CMyDuiWnd() {}
    ~ CMyDuiWnd() {}

    //GetWindowClassName是基类的纯虚函数,我们继承后必须实现。
    virtual LPCTSTR GetWindowClassName() const { return _T("DUIMainFrame"); }

    //覆盖基类的虚函数 以下2个都是
    virtual void    Notify(TNotifyUI& msg) {}

    virtual LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
    {
        LRESULT lRes = 0;

        if( uMsg == WM_CREATE ) //如果是窗口创建消息
        {
            //创建一个按钮
            CControlUI *pButton = new CButtonUI;
            pWnd->SetText(_T("Hello World!"));   // 设置文字
            pWnd->SetBkColor(0xFFFF0000);       // 设置灰色背景

            m_PaintManager.Init(m_hWnd);          
            m_PaintManager.AttachDialog(pButton);
            return lRes;
        }

        if( m_PaintManager.MessageHandler(uMsg, wParam, lParam, lRes) ) 
            return lRes;
        return __super::HandleMessage(uMsg, wParam, lParam);
    }    

 

B:在Main函数中的代码

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
    CPaintManagerUI::SetInstance(hInstance);
CMyDuiWnd FrameWnd; FrameWnd(NULL, _T(
"DirectUI"), UI_WNDSTYLE_FRAME, WS_EX_WINDOWEDGE); FrameWnd.ShowModal();
FrameWnd.CenterWindow();
  
return 0; }

 

C:运行后的效果

技术分享

 

 

 

DirectUI 学习笔记2-DUI HellowWorld程序

标签:

原文地址:http://www.cnblogs.com/FR1end/p/4926140.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!