
界面
文章平均质量分 82
b2b160
电子爱好者
展开
-
VC 界面库皮肤库
CJLib(mfc扩展开发包,是xtreme toolkit的前生,但xtreme toolkit收费了)http://www.codejock.com/BCGControlBar(收费,mfc扩展开发包,功能很强大)http://www.bcgsoft.comSkinMagic(收费,看起来像Office)http://appspeed.com/html/download.html原创 2009-02-17 16:27:00 · 2464 阅读 · 0 评论 -
警惕WS_EX_LAYERED属性的问题
WS_EX_LAYERED是微软窗口扩展属性,在API层面实现了窗口透明化的功能,的确为创建酷酷窗口提供了便利 然后必须警惕该属性带来的问题. 例如最近希望扩展Tooltip窗口的显示效果 当在绘画时使用了SetBkMode( TRANSPARENT ),希望透明显示文字时就出现了问题,在ToolTip更换了文字后,发现底色整个变黑了 在EraseBk原创 2009-09-25 11:52:00 · 14529 阅读 · 0 评论 -
父窗口和所有者窗口
一、概念和区别 在windows系统中,每个窗口对象都对应有一个数据结构,形成一个list链表。系统的窗口管理器通过这个list来获取窗口信息和管理每个窗口。这个数据结构中有四个数据用来构建list,即child、sibling、parent、owner四个域。 所以我们可以看到,窗口之间的关系有两种:owner-owned 关系和 parent-child关系。前者称之为拥有/被转载 2010-02-14 23:10:00 · 1113 阅读 · 0 评论 -
RICH EDIT 控件 SDK 参考手册
摘要: 本文对Rich Edit控件底层消息机制进行了讲解,以期读者对Windows平台下的Rich Edit控件有一个更深入的认识,同时对于使用Win32 SDK进行开发的人员具有一定参考价值。因为文章的初衷是引领VB程序员通过Win32 API调用来扩展VB下的Rich Edit控件的功能,所以对于每个消息的详细说明和注意事项未作过多说明,感兴趣的朋友可以参考Visual Studio下的MS转载 2010-02-14 23:12:00 · 3674 阅读 · 3 评论 -
完成了XMPP部分的基础界面
原以为做一个IM不算太难的事情,却原来发现并非如此.一些琐事加起来还是很烦人的.就如界面部分就够人折腾的了.不过总算完成了一般的界面部分.终于有了个大体样子了.继续加油!!争取快点完成一个可用框架出来,不过最近发现GOOGLE好像不返回在线状态,不知道咋回事了。原创 2010-12-19 23:13:00 · 3250 阅读 · 3 评论 -
帮优快云网友写的CPL扩展范例,一个贪吃蛇小游戏
那天有网友问怎么在控制面板里的鼠标设置里添加一个对话框,顺口答应了该网友要为他写个代码这两天抽空写了一个.其实就是CPL的SHELL扩展主要实现两个接口IShellExtInitIShellPropSheetExt这两个接口都比较简单,关键是要在注册表相应位置添加上对应键值,原代码里都有,代码不难,大家自己看编写环境vS2003现在优快云的下载用不了,只能等可以上传时再发代码了。先看看效果游戏只是写了个大概的逻辑,像关卡,道具之类的都没加入,,有兴趣的网友可以自己添加.原创 2010-12-24 18:42:00 · 3436 阅读 · 4 评论 -
金山卫士界面源码解读及界面库分离(1)
金山对其金山卫士进行了开源,目前已经公开了6个子项目。不过也许很多人和我一样对安全部分的功能并不感兴趣,毕竟那需要比较艰辛的工作。但对其所运用的界面库部分可能比较感兴趣,该库是基于目前比较流行的DIRECTUI技术,非常适合于工具软件的开发,例如互联网软件及娱乐软件等。不过目前该库是作为源代码进行调用的,使用并不方便。所以我准备将其从金山卫士的项目中分离出来,作为独立的库进行调用,并同时撰写其使用文档资料,欢迎有此同好的朋友加入。原创 2011-02-25 15:14:00 · 43059 阅读 · 65 评论 -
金山卫士界面源码解读及界面库分离(2)
前面已经发布了分离后的Kui代码,我们继续,下面来解释该代码库的使用.首先要说下Kui框架的一些基础概念.金山界面库不使用Windows的窗口布局,只是使用Windows的窗口作为一个载体,整个窗口都只是作为一个绘制面,而Kui对窗口实行重新布局,取消了原窗口非客户区和客户区的概念.而自己对窗口划分为上中下三个部分.上部分为Header,一般作为窗口标题栏,可以放置缩小,最大化,关闭按钮, 中部分为Body,是窗口主要功能操作区域,下部分为Footer,一般作为状态显示.说明这部分主要是为了以后写XML时使原创 2011-03-20 23:15:00 · 31014 阅读 · 21 评论 -
金山卫士界面源码解读及界面库分离(3)
通过前面两篇文章的介绍,相信同学们对Kui这个库的大体使用方法有了了解.接下来,我们就可以开始实际演练了,下面我们将展现基础控件的使用.不过在这里要提一下此库的一些没完善的地方,因为论坛有人提到了.一.没有键盘接口,所以对Tab等按键无法反应.二.还没有换肤功能三.xml必须手工编辑.四.其实也是很多人提到的,就是代码缺乏注释,很多时候还可能发现代码有些零乱,的确不应该是金山这种顶级软件公司所应该展现的样子.不过这方面金山已经作了相关说明.代码需要和商业代码相分离,很多做法可能是暂时的.对于这些弊端,可以自原创 2011-03-22 18:25:00 · 14069 阅读 · 19 评论 -
金山卫士界面源码解读及界面库分离(4)
通过前面三篇的基础学习相信大家已经对Kui库的使用比较熟悉了。主要分三步走。首先构建程序代码框架然后根据界面布局编写xml布局最后添加程序的交互代码。所以构建好主程序代码框架后,不同的界面只需要通过改动xml,然后添加交互代码就可以了。主程序代码一般都固定的。高级界面下面我们进行高级界面的编写:原创 2011-03-23 14:52:00 · 17668 阅读 · 42 评论 -
金山卫士界面源码解读及界面库分离(5)
其实开始没有想过要写这么多篇文章介绍的,因为看到优快云的朋友如此碰场,所以对KUI的热情并没有减少,因此不知不觉就写到了第五篇了.本篇开始介绍比较复杂的界面应用了.界面应用介绍完成后,估计要开始整理系统的应用文档资料了.也不知道自己能坚持到啥时候,呵呵.KUI高级界面原创 2011-03-25 00:28:00 · 20624 阅读 · 82 评论 -
金山卫士界面源码解读及界面库分离(附录) --你问我答
一、VS2005、VS2008、VS2010如何编译?因为我的是VS2003,所以编译出来的lib好像和其他版本的会有冲突,所以请使用以上版本的同学自行编译KUILib/kscbase/kscbase.vcproj这个工程,并将生成的lib放入KUILib/lib,然后就可以编译例子程序了。但注意KUILib/KUILib.vcproj是不需要编译的二、kuimsgbox.cpp怎么找不到呢,KUILib.vcproj编译不成功?请看第一条,KUILib.vcproj是不需要编译的,KuiApp.cpp,k原创 2011-04-01 12:37:00 · 13919 阅读 · 85 评论 -
金山卫士界面库界面编辑器效果图
一直都有朋友说好久没更新了,的确是啊,不过也是没办法的事,界面编辑器从无到有的编写过程还是蛮痛苦的.断断续续的编写,总算有个大概样子了.先发个预览效果图来.不过距离最终完成还要有一段时间,先发上来,大家有兴趣测试的也可以索取测试版本,帮忙测试并提建议,避免太长时间没更新,免得长草原创 2011-07-08 22:34:35 · 4803 阅读 · 17 评论 -
使用C++和DirectX开发GUI - 资源编辑器及其它
欢迎回到“使用C++和DX开发GUI”的第四部分。接着我们的主题(我是如何为我未来的游戏开发GUI的 — Quaternion),本文将关注所有的有关游戏GUI的细节问题。4.1、保存窗口 窗口序列化(存储和载入窗口)对你的工程而言或许不重要。如果你的游戏GUI很简单,你可以全靠程序在游戏中实现窗口。但如果你的GUI相对复杂,或者随着开发的过程经常会改变,那么你会想写程序以把一个窗口(和转载 2009-09-17 16:48:00 · 1786 阅读 · 3 评论 -
使用C++和Directx开发GUI(三)
欢迎回到"使用C++和DX开发GUI"的第三部分.(这里是第一部分和第二部分).接着我们的主题(描述我如何为我未来的游戏构建GUI),本文将探讨建造GUI所需的一些通用控件.我们将详细描述几种不同的控件形式,包括按钮,列表框,文本框等等.这一节并不像其他章节那样有很多的代码--这主要是因为我们程序员对于GUI的外观是很挑剔的.我们喜欢把我们的按钮,文本框和GUI做的看起来独一无二,并且符合转载 2009-09-17 16:47:00 · 1409 阅读 · 0 评论 -
在Eric4下用PyQt4编写Python的图形界面程序
作者RunningOn 本文是PyQt4的入门教程。网上能搜到其它教程,但我觉得讲得不是很清楚,希望这篇文章对入门者更加有帮助。 先介绍一下PyQt4。Qt4图形库一经发布就好评不断,它在Python下的绑定PyQt4更是让我眼前一亮,不但漂亮,而且开发程序非常方便。在我看来,PyQt4最大的改进之一是它不再拘泥与各种布局控件了,也就是说,现在写图形界面程序,和VB一样可以直接拖控原创 2009-02-18 16:16:00 · 2434 阅读 · 0 评论 -
MFC与设计模式(1):MFC中的设计模式之厂(Factory)
引子:网上对MFC的批评不绝于耳,说MFC这样,那样不好,甚至有网友直接用“烂”来形容MFC。我学习MF C也有一段时间了,我自己感觉我的MFC水平也就是中等偏下,离熟练运用MFC还有一段距离。我深刻体会到学习MFC的“痛苦”,所以在工作中我一般都尽量避免使用MFC。前几天在优快云中看到关于MFC中用到了那些设计模式的讨论,顿时觉得这是一个很有意义的讨论。为什么我们不可以换一个角度,从实现转载 2009-03-19 11:54:00 · 1466 阅读 · 0 评论 -
深入探讨MFC消息循环和消息泵
深入探讨MFC消息循环和消息泵作者:周焱首 先,应该清楚MFC的消息循环(::GetMessage,::PeekMessage),消息泵(CWinThread::PumpMessage)和 MFC的消息在窗口之间的路由是两件不同的事情。在MFC的应用程序中(应用程序类基于CWinThread继承),必须要有一个消息循环,他的作用是从 应用程序的消息队列中读取消息,并把它派送出去(::Dis转载 2009-03-29 15:08:00 · 1398 阅读 · 0 评论 -
再谈非模态对话框的销毁 / 对话框建立过程/ 对话框销毁过程/ 消息传递过程
非模态对话框相对于模态对话框,他的创建和销毁过程和模态对话框有一定的区别 先看一下MSDN的原文: When you implement a modeless dialog box, always override the OnCancel member function and call DestroyWindow from within it. Don’t call the base clas转载 2009-04-05 15:21:00 · 2313 阅读 · 0 评论 -
使用 Visual C++ 2008 功能包加强 Windows 应用程序
本文以 Visual C++ 功能包的预发布版为基础。文中包含的所有信息均有可能变更。 本文讨论: Microsoft 基础类库更新 使用 C++ 对功能区进行编程 使用 C++ 实现选项卡式 MDI 多态函数和智能指针 本文使用了以下技术: Visual Studio 2008,MFC 目录 Office 功能区用户界转载 2009-05-05 16:01:00 · 1205 阅读 · 0 评论 -
在主线程中终止带消息处理的线程的方法
当线程中有消息处理时,如一般的线程中显示操作结果时,此时如果要在主线程中使用WaitForSingleObject的话,往往会导致阻塞,例如如下的主线程终止副线程,而副线程中用了诸如SendMessage的函数,那么自然相互锁住了,因为你运行等待的函数没有返回,那么线程中的消息得不到处理,自然就两边的线程都阻塞在那里,此时可以使用API函数MsgWaitForMultipleObjects来原创 2009-07-17 12:57:00 · 1281 阅读 · 0 评论 -
WTL体系结构
绪论 WTL最终来了,而且提供了我所希望的功能.我在WTL Bytesize(译文)的文章列出WTL主要特征.在本文中,我将描述一下WTL的体系结构,同时我会给出一些简单的例子来演示如何使用它的那些特征.希望能够对您有所帮助.WTL应用程序的类型 WTL有好几种应用程序类型,供您在AppWizard选取. 下表对这些应用程序进行转载 2009-05-31 15:19:00 · 1197 阅读 · 0 评论 -
WTL GUI基类
现在正式开始介绍WTL!在这一部分我讲的内容包括生成一个基本的主窗口和WTL提供的一些友好的改进,比如UI界面的更新(如菜单上的选择标记)和更好的消息映射机制。为了更好地掌握本章的内容,你应该安装WTL并将WTL库的头文件目录添加到VC的搜索目录中,还要将WTL的应用程序生成向导复制到正确的位置。WTL的发布版本中有文档具体介绍如何做这些设置,如果遇到困难可以查看这些文档。转载 2009-05-31 15:49:00 · 1911 阅读 · 0 评论 -
在CListCtrl之间及CListCtrl内部实现拖放
在CListCtrl之间及CListCtrl内部实现拖放 源码下载参考我的资源里.上传后地址还没出来,等出来后再放上 介绍本篇文章将介绍如何实现使用拖放方法从一个CListCtrl移动项目到另一个CListCtrl,同样也显示了如何使用拖放从在CListCtrl内部实现改变项目顺序。这是我很早就想学的一些东西,并且同样在Code Project看到很多关于这个的问翻译 2009-08-12 17:23:00 · 7535 阅读 · 2 评论 -
如何在MFC的SDI程序中实现多视图
我们都知道MFC里的SDI程序实现了Frame-Doc-View结构,在这种模型中,实现了一个文档对应一个VIEW,而MDI则实现了多文档多视图模型。但很多时候我们的程序不需要多文档,但希望能处理多个VIEW,这时候可能会有人想到拆分窗口SplitterWnd,拆分窗口能在同一个框架里同时显示多个视图(VIEW)。不过可能有人喜欢虽然存在多个视图,但同一时间只想显示一个视图。例如某些原创 2009-07-03 17:28:00 · 3359 阅读 · 0 评论 -
使用C++和Directx开发GUI(一)
看起来我在做发明车轮的浪费时间的事--windows已经有一套非常复杂功能完善的GUI.不幸的是windows的GUI适用于办公软件,而这通常不适合游戏软件.游戏一般需要比windows更精确的控制(例如,使用自己的GUI实现用alpha混合创造的部分透明的窗口比较容易,而使用windows的GUI则几乎做不到).这篇文章将讲述如何使用C++和DirectX来创建自己的GUI.文章分为几部转载 2009-09-17 16:44:00 · 1913 阅读 · 1 评论 -
使用C++和Directx开发GUI(二)
欢迎您继续阅读"使用C++和Directx开发GUI"的第二部分.这里是第一部分.接着我们的主题(讲解在我未来的游戏如何使用GUI(图形用户界面)),本文将解释窗体的许多神秘之处.我们将关注窗体树如何工作,为我们使用GUI制订计划,以及创建窗体类的细节,包括绘制,消息机制,坐标系统和其他所有的麻烦事儿. 在此我们将着重使用C++.如果你对纯虚函数,dynamic_casting等等已经生转载 2009-09-17 16:46:00 · 1394 阅读 · 0 评论 -
金山卫士界面库界面编辑器KuiDesigner V1.0 Alpha 基本完成了
总算把一个Kui界面编辑器搞了个大概出来,其实还是有很多功能还没完成,估计Bug还不少,但感觉有点累了.所以先把这个作为Alpha版本放出来吧.这个编辑器的特色就是本身也是使用Kui的库来设计,所以在一定程度上也验证了这个库还是很实用的, 相信对于熟悉Kui库的朋友来说,使原创 2011-07-16 22:21:50 · 19679 阅读 · 57 评论