

码龄10年
暂无认证
34118访问
1
等级
8获赞
3
评论
热门文章
-
一.某岛之人物对象及其加密函数解析
2147
-
一.《传奇M》装备栏遍历的突破口
1789
-
二.某龙端游中LUA的分析和调用
1539
-
一.《轩辕传奇》周围遍历之二叉树
1385
-
一.《UE4奥丁》人物最大属性
1330
最新评论
-
20240228阿⑤
积分乍获得
-
20231124ziher
666
-
20230909八月老师
什麼時候發佈易語言支持庫呢
二.《Duilib》第一个简单的窗口
Heart
2023-05-20 14:52:14 发布
359
分类专栏: 开发技术 文章标签: Duilib 第一个简单的窗口
第一个简单的窗口
//继承 CWindowWnd INotifyUI #pragma once #include "day1.h" class HeartDuiMain: public CWindowWnd, public INotifyUI { public: virtual LPCTSTR GetWindowClassName() const;//继承父类 virtual void Notify(TNotifyUI& msg); virtual LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam); protected: CPaintManagerUI m_PaintManager;//渲染器 };
//实现接口 #include "HeartDuiMain.h" LPCTSTR HeartDuiMain::GetWindowClassName() const { return _T("DUIMainFrame"); } void HeartDuiMain::Notify(TNotifyUI& msg) { }
//实现重写消息处理函数 LRESULT HeartDuiMain::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) { LRESULT lRes = 0; if (uMsg == WM_CREATE) { CControlUI *pWnd = new CButtonUI; pWnd->SetText(_T("迪大学院")); // 设置文字 pWnd->SetBkColor(0xFFFF0000); // 设置背景色 m_PaintManager.Init(m_hWnd); m_PaintManager.AttachDialog(pWnd); return lRes; } else if (uMsg==WM_CLOSE) { DestroyWindow(m_hWnd); return lRes; } if (m_PaintManager.MessageHandler(uMsg, wParam, lParam, lRes)) { return lRes; } return __super::HandleMessage(uMsg, wParam, lParam);//调用的就是win32默认的 }
main函数调用
#include "day1.h" #include "HeartDuiMain.h" int WINAPI _tWinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,LPTSTR lpCmdLine,int nCmdShow) { //1.创建类 HRESULT Hr = ::CoInitialize(NULL); if (FAILED(Hr)) return 0; CPaintManagerUI::SetInstance(hInstance); HeartDuiMain duiFrame; duiFrame.Create(NULL, _T("Heart382856600"), UI_WNDSTYLE_FRAME, 0,0,0,500,300); duiFrame.CenterWindow(); duiFrame.ShowWindow(); duiFrame.ShowModal(); //CPaintManagerUI::MessageLoop(); //duiFrame.ShowModal(); ::CoUninitialize(); return 1; }


评论列表