Duilib 学习笔记
文章平均质量分 70
llC2018
每天积累,每天进步,让青春更精彩!
展开
-
VS2010 编译Duilib 错误
解决VS2010 编译Duilib 错误1>f:\mystudy\myprogramers\duilib\Control/UIFlash.h(10): warning C4192: 导入类型库“IServiceProvider”时自动排除“..\Utils/Flash11.tlb”1> UIWebBrowser.cpp1>c:\program files (x86)\micr...原创 2018-01-17 21:16:25 · 1148 阅读 · 0 评论 -
DuiLib VirtualListUI 虚拟列表
思路:修改ListBody ,重写SetPos, SetScrollPos, ProcessScrollBar, 利用 SetScrollPos 滚动条位置动态从数据接口获取数据并加载到列表, 重新设置位置; 需要增加一个数据提供者纯虚类IVirtualDataProvider; 关键点就是SetPos, SetScrollPos, ProcessScrollBar这三个函数的重写,控制需...原创 2019-05-22 19:14:50 · 2386 阅读 · 14 评论 -
虚拟 TileLayout
当某些结果需要像文件图标显示一样的时候, 结果超多上万条甚至更多的时候,虚拟的容器非常重要!一、虚拟 TileLayout 思路1, 数据是动态加载的,需要一个提供数据的虚基类 IVirtualDataProvider, 用于用户自定义数据接口类型添加到容器中;2,滚动条是由容器中的 Item 数量决定的 Range , 因此需要重写 ProcessScrollBar 函数 和 Se...原创 2019-05-15 22:20:00 · 565 阅读 · 0 评论 -
记标签页关闭崩溃问题duilib Close
崩溃问题:代码段void CExplorerBar::FreeWebSearchWin(){ if (m_pWebSearchWnd) { //m_pWebSearchWnd->Close();//这种直接Close 可能导致duilib有资源未被完全释放,消息处理存在问题 SendMessage(m_pWebSearchWnd->GetHWND(),...原创 2019-02-25 21:05:59 · 760 阅读 · 0 评论 -
duilib 动态添加 提前写好xml
xml文件:ftp_file_list_item.xml<?xml version="1.0" encoding="UTF-8"?><Window> <HorizontalLayout height="20" width="700"> <ListContainerItemEx name="btnFileChoose" bkimage="fi...原创 2019-02-28 22:54:41 · 1316 阅读 · 1 评论 -
duilib虚拟窗口使用
方便每一个TabLayout的界面都可以用一个类去处理;避免将所有的消息写到同一个主窗口类中;方便维护;主窗口代码:构造函数中添加CEtcdMainWnd::CEtcdMainWnd(){ AddVirtualWnd(_T("PatManage"),&m_PatManagePage); //加载“病例管理”界面 PatManage与xml配置必须相同 m_Pat...原创 2018-02-27 16:06:44 · 1853 阅读 · 0 评论 -
duilib List 动态添加
一、为什么需要动态添加?由于我不知道我的List头的项目到底是哪些,我的List中有多少行数据需要添加,动态添加就比较合适,方便。二、实现1、Xml配置 <HorizontalLayout name="ListContainer" height="450"> <!-- <List name="ShowList" float="true" pos=...原创 2018-02-06 10:01:01 · 8599 阅读 · 20 评论 -
duilib 组合多个控件
有时候会遇到一个控件想要多个控件的功能,这时候就需要自己封装控件。或者在一个或多个界面中会有相同的多个控件组合在一起的时候,也可以将这些控件封装到一起。一、目标实现效果二、实现1、XML配置<?xml version="1.0" encoding="UTF-8"?><Window size="367,290"><HorizontalLayout b...原创 2018-02-26 15:58:17 · 1919 阅读 · 1 评论 -
duilib 绝对布局小 Tips 导致控件不显示
小细节、不注意就找不到错误原因: 预期效果图: 如果一不小心写错了效果如下:写错代码: 分析:这种写错了,一脸懵逼,不知道哪里出错了!原创 2018-02-05 15:55:59 · 602 阅读 · 0 评论 -
duilib WindowImplBase基础类的初次使用
第一步、引入duilib的Lib: #include "../DuiLib/UIlib.h" //包含头文件using namespace DuiLib; //使用Duilib命名空间#ifdef _DEBUG# ifdef _UNICODE# pragma comment(lib, "../Libs/DuiLib_ud.lib")// 这是我du...原创 2018-01-19 15:36:13 · 932 阅读 · 0 评论 -
Duilib CScrollBarUI 滚动条位置越界产生 滚动条Bar 无法显示,以及位置异常BUG
更改代码 DoEvent() MouseMove 事件时计算位置if( (m_uThumbState & UISTATE_CAPTURED) != 0 ) { if( !m_bHorizontal ) { int vRange = m_rcItem.bottom - m_rcItem.top - m_rcThumb.bottom + m_rcThumb.top - 2 * ...原创 2019-05-27 22:53:45 · 794 阅读 · 0 评论