duilib写个三国杀?

写了两天 感觉快tj了 赶紧记录一下

目前的效果图

血量的显示太麻烦直接用数字显示了

武将的自定义控件真是太烦了 继承了CContainerUI类 把所有的细节都new了一个CControlUI  右上角的脸谱是按钮

(变量名直接用的拼音)

界面下方的部分直接用XML完成的 确定 取消 结束 这三个按钮看起来还是有些不太自然,然而我没有耐性再调了

手牌部分直接用了 HorizontalLayout自动排列,新手牌自动被扔到前一张的后面(手牌太多怎么办?界面可以向右拉的→_→偷懒了先这样吧)

手牌图片集成CButton,被包含在一个CContainerUI中,上面放置了一个没有背景的控件,这样被点击时直接隐藏上方的控件就完成了让手牌向上移动的效果

这里的红心和A都是动态添加上去的,不过没什么技术含量就不说了。

如果不用太完美的话到此位置剩下的就和duilib没多大关系了,暂时先做到这里了。

(嗯,可能也不会继续更新了)

时间: 2024-10-09 03:51:37

duilib写个三国杀?的相关文章

让Duilib多线程编程更easy

一.Duilib不能开发多线程程序? 记得非常久曾经就听有人说过Duilib的多线程支持性不好,原因是Duilib里面的控件是用数组管理的全局变量,不能进行多线程訪问,加锁非常麻烦.事实上这个说法是非常不合理的,以至于在开发多线程程序时直接将Duilib拒之门外.当然使用Duilib里面开发多线程是木有不论什么问题的,不要单纯地觉得:其它的界面库就能使用多个线程同一时候操作一个控件,Duilib就不行.事实证明,这点MFC做不到,WinForm也做不到,连微软自己都搞不定的东西,不能算Duili

duilib 同一个进程多个DLL使用问题

duilib库自己现在用的蛮舒服的,全部的代码自己也看几遍,对自己开发UI帮助蛮多.duilib一个小巧的directui库,基本满足能大部分开发.虽然有一些BUG,但不影响开发,只要自己明白的他的库原理其他就容易了. 自己开发当中时候为了使模块更加模块话,我直接把界面和业务封装在一个DLL里面,资源都放在压缩包里面并做为DLL的资源.对外只提供接口,就算需求变化了,要修改界面,但对外面来说,接口不变,他们什么都知道,这样降低耦合性.但项目开发当中发现我启动一个用DUILIB模块界面后,前面界面

修复duilib CEditUI控件和CWebBrowserUI控件中按Tab键无法切换焦点的bug

转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/41556615 在duilib中,按tab键会让焦点在Button一类的控件中切换,但是切换焦点一直存在bug,具体的描述如下: 1.在主窗体里弹出新的窗体,当新窗体中存在CEditUI控件并且焦点在此CEditUI控件上,那么按tab键将无法切换焦点而一直处于CEditUI中.(只在新窗体中有此bug,主创体中没有,原因会在后面分析) 2.CWebBrowserUI控件

DuiLib学习笔记2——写一个简单的程序

我们要独立出来自己创建一个项目,在我们自己的项目上加皮肤这才是初衷.我的新建项目名为:duilibTest 在duilib根目录下面有个 Duilib入门文档.doc 我们就按这个教程开始入门 首先新建一个win32项目 去DuiLib根目录,把目录下DuiLib文件夹拷贝到新建项目的根目录.再把这个项目添加进我们解决方案中. 从教程里面把以下代码粘贴到我们项目的stdafx.h中 // Duilib使用设置部分 #pragma once #define WIN32_LEAN_AND_MEAN

duilib 界面库 实现timer定时器

看了大神介绍的duilib感觉已被同龄人狠狠地甩在背后.所以痛下决心,之后要多花时间写代码. 大神教程传送门: http://www.cnblogs.com/Alberl/p/3341956.html 现在的问题是想基于duilib实现一个timer定时器.工程基础大概是在 http://www.cnblogs.com/Alberl/p/3343763.html 因为自己的东西是基于大神的东西写的,所以要把大神的教程看得差不多才知道我在说什么.O(∩_∩)O~~ 前台大概长这个样子: 稍微修改了

Duilib教程-控件练习

一.控件消息的响应. 在HelloDuilib例子中,程序不能退出,在这里,我将添加一个关闭按钮,当点击它时,调用PostQuitMessage进行退出. 首先在界面的右上角添加一个关闭按钮,并取名为“btnClose”. 然后在 CHelloDuilibWnd 中重载 WindowImplBase::Notify (); 代码如下: void CHelloDuilibWnd::Notify( TNotifyUI& msg ) { if (msg.sType == DUI_MSGTYPE_CLI

Duilib初级控件扩展一例: 具有鼠标滚动消息的OptionUI

当初之所以有这个想法, 是因为我想在Option上滚动鼠标的时候自动切换到前一个(或后一个)Option上面去. 所有的OptionUI在水平布局HorizontalLayout上面. 例子虽然能达到我要的前后的效果, 但是后来证明我错了, 试想想看, 为什么是让OptionUI来处理鼠标滚动消息, 让一个OptionUI处理鼠标滚动消息有啥意义? 明明该交给Option所在的水平布局来处理, 不是最好的选择吗? 的确是这样, 我当时就应该多想法再写的, 也可能是熟能生巧的原因吧, 以后注意了.

写给我的2015—开启工作新旅程

前沿: 2015年的总结相比2014年来的晚了很多,原因一方面是今年呀的发现CSDN居然没有了前两年写年终的活动.还有一方面嘛还是自己太懒散了,一直恍恍惚惚的没有下手来总结. 今天,在这小年夜里(ps:外面下完雪挺冷的).独自一个人坐在办公桌前.静下心.记录下消逝的2015,再不总结就是大年30啦. 返回到2014年写下的些许愿望,有些逐渐的在实现了而有些依然须要更努力. 过去的2015,一半在学校毕业还有一半花在工作上,此刻的Me掰掰手指算下居然已是工作了7个月的社会进步爱国人士.从告别研究生

基于wke封装的duilib的webkit浏览器控件,可以c++与js互交,源码及demo下载地址

转载请说明原出处,谢谢~~ 前些日子用wke内核封装了duilib的webkit浏览器控件,好多群里朋友私聊我希望可以我公布源码,今天把这个控件的源码和使用demo公布.其实这个控件封装起来没什么难度,我只是按照原来作者的demo,把相应的消息封装成duilib对应的. 在此首先要感谢wke内核的作者BlzFans以及soui2界面库的作者flyhigh,BlzFans精简了webkit内核后封装为wke并公布了源码,flyhigh对wke进行处理让他更容易移植到dui工程中.wke内核10M大