随笔分类 -  duilib学习

摘要:一、涉及编写自己的自己的键盘由于只使用英文字母跟数字等简单的字符而已,没有包括全角或者中文字符。所以直接使用跟手机的输入密码键盘一样的键盘即可。遇到的问题:1、使用法keybd_event()的方式进行发送消息,不管发送大小写字母都是显示小写字母 2、键盘不能有焦点状态,否则使用的ke... 阅读全文
posted @ 2015-12-16 19:55 CY_K_YC 阅读(1003) 评论(0) 推荐(0)
摘要:今天做的使用listui来查看数据发现的一个bug:当list控件的滚动条移动的时候,列表项只有一部分显示在list上面的时候剩余的一部分偶尔会显示到界外。刚开始查看listui的时候,认为应该是setpos的时候,计算错误导致的问题。这么判断的依据是因为在移动滚动条的时候会产生刷新然后会引发重绘。... 阅读全文
posted @ 2015-09-25 19:51 CY_K_YC 阅读(815) 评论(0) 推荐(0)
摘要:该demo是模拟QQ的界面和相应的操作。1、该主界面的列表使用了自定义listui的操作。在 createcontrol中进行自定义创建。CControlUI* MainFrame::CreateControl(LPCTSTR pstrClass){ if (_tcsicmp(pstrClas... 阅读全文
posted @ 2015-04-26 12:58 CY_K_YC 阅读(980) 评论(0) 推荐(1)
摘要:CNotifyPump 主要进行的是消息的映射还有相关VirtualWnd的操作class UILIB_API CNotifyPump{public: bool AddVirtualWnd(CDuiString strName,CNotifyPump* pObject); bool Re... 阅读全文
posted @ 2015-04-13 00:29 CY_K_YC 阅读(1019) 评论(0) 推荐(0)
摘要:刚开始的时候设置CPaintManagerUI::SetInstance(hInstance); CPaintManagerUI::SetResourcePath(CPaintManagerUI::GetInstancePath()); ::CoInitialize(NULL);这里设置的re... 阅读全文
posted @ 2015-04-09 23:10 CY_K_YC 阅读(671) 评论(0) 推荐(0)
摘要:说明:我这里去除了压缩文件跟资源文件只考虑_UNICODE宏1、首先是Create(xml)文件刚传进来的时候进行判断该字符串是否以'loadfrommem:判断该文件的格式是utf8(有无bom)、asci或者是unicode,然后将内容拷贝到LPTSTR m_pstrXML; 然后再调用_Par... 阅读全文
posted @ 2015-04-07 23:37 CY_K_YC 阅读(1913) 评论(0) 推荐(0)
摘要:CTreeViewUI1、该控件继承自CListUI,所以是使用了对应的列表来模拟树形控件。该控件的容器填装的是CTreeNodeUI,而CTreeNodeUI也继承CListContainerElementUI,所以树形控件剥掉外壳其实就是CListUI,然后子列表是CListContainerE... 阅读全文
posted @ 2015-04-06 19:24 CY_K_YC 阅读(3730) 评论(0) 推荐(0)
摘要:关于scrollbar只研究上下滚动1. 首先Scrollbar的父窗口是ContainerUI,不管哪个控件想使用滚动条,该空间必须是Container或者继承Container.2. 该函数记录滚动条的百分比的数值是m_nScrollPos,然后记录滚动条总共被分成多少份的则是m_nRange。... 阅读全文
posted @ 2015-04-06 09:37 CY_K_YC 阅读(585) 评论(0) 推荐(0)
摘要:1、CComboBoxUI这个函数里面的内容还没学着用。这里主要学习CComboUI1、该函数继承CContainerUI是因为该函数会包含下拉列表的控件2、该函数同时继承了IListOwnerUI 接口,是因为列表控件们在回掉的时候存储的是IListOwnerUI指针3、该函数有一个CComboW... 阅读全文
posted @ 2015-04-01 23:41 CY_K_YC 阅读(1777) 评论(0) 推荐(0)
摘要:要学习该控件得先去看duilib的demo里面的ListDemoListMainForm1、该类继承了IListCallbackUI接口,并实现了对应的LPCTSTR GetItemText(CControlUI* pControl, int iIndex, int iSubItem)回调函数。在C... 阅读全文
posted @ 2015-03-31 00:01 CY_K_YC 阅读(1896) 评论(0) 推荐(0)
摘要:CDateTimeUI1、该控件继承了CLabelUI控件,该空间并无重写SetAttribute的函数。全部属性跟CLabelUI控件一样。2、该控件又有CDateTimeWnd类的一个指针用来显示具体让你选择的时间,该类就是创建的是SysDateTimePick32的控件。也许会疑惑,为什么In... 阅读全文
posted @ 2015-03-30 22:14 CY_K_YC 阅读(3135) 评论(0) 推荐(0)
摘要:1、关于创建问题:在创建窗口的时候CPaintManagerUI::SetResourcePath(CPaintManagerUI::GetInstancePath()); MainWnd* main_wnd = new MainWnd(); main_wnd->Create(NULL,... 阅读全文
posted @ 2015-03-29 18:03 CY_K_YC 阅读(710) 评论(0) 推荐(0)
摘要:1、sizeof(CDuiString)的大小是68字节:4字节的字符串指针+64字节的缓冲区。 这里使用64字节的额外缓冲区的目的是为了以空间换时间的方法,当遇到长度小于64的字符串时候直接使用该缓冲区而不用每次去申请内存。 这里跟std::string类似,都是使用小缓冲区来保留大小。std... 阅读全文
posted @ 2015-03-28 18:26 CY_K_YC 阅读(573) 评论(0) 推荐(0)