对于RingSDK的文章中的几点误区需要与大家纠正一下,千万不要误导大家。1、客户区透明度问题:
原文:“QQ是可以调整界面透明度的,但是调整了透明度却连中间客户区也变得半透明了。客户区毕竟是软件最重要的部分,是要与用户交互的,透明了就影响操作了,因此这里的客户区不学QQ,始终不透明”纠正:从目前客户的需求来看,RingSDK的说法似乎不太对。客户区透明影响操作?那要看透明多少的问题。如果设置不透明度为220的话,似乎也
不影响操作,关键是透明可以是按图像来。根据我们以往的经验,客户区适当的透明不但不影响用户的操作,相反还能提高用户的体验度。
2、不透明控件必须创建弹出窗口的问题:
原文:“要实现不透明控件,只能创建一个弹出窗口,遮住主界面的客户区域,然后设定与主界面连动,即始终跟着主窗口移动及调整尺寸”纠正:RingSDK为何要创建弹出窗口来实现不透明的控件呢?没有必要啊。是不是说UpdateLayeredWindow不能显示子控件?那只能说明RingSDK对这个函数的原理还了解的不够透彻。其实可以完全做到UpdateLayeredWindow显示子控件的效果。你只要将子控件的WM_PAINT所绘制的图像AlphaBlend到目标图层就可以了。
3、GDI操作不支持Alpha通道的问题:
原文:“,然而不幸的是,几乎所有的GDI操作,除了TransparentBlt,那些最常用的BitBlt,TextOut,FillRect等等都是忽略ALPHA通道的,绘制过后这些区域的ALPHA值都变成了0,即全透明”
纠正:有一个RingSDK不知道的方法可以将GDI操作可以基于32位图上操作,并且支持Alpha值得为0-255.Alpha值为多少由用户自己来设定。4、QQ2009实现内幕问题:
原文:“QQ2009所用的DirectUI应该能很容易实现这个效果,但是并没实现,估计跟执行效率有关”
纠正:据我所知,QQ2009没有实现这个效果并不是楼主猜测的原因。另外,我觉得写文章不要带上自己的猜测,要写确信无疑的东西,否则大家都被你摸不着头脑了。
RingSDK后面的代码都是基于以上的论点展开的,但论点都错了,再往下看有何意义,方向错了,必然带着大家走到死胡同里去了。目前的DirectUI可以很好地解决RingSDK感觉迷茫的地方。关于透明的问题可以到UIPower网站的联系我们页面,与我们取得联系后可以直接询问。谢谢!

解决方案 »

  1.   

    1、这个问题是见仁见智,看个人喜好了,看一下这个论坛有多少人问为什么透明窗口连控件都透明的问题就知道有没有这个需求了。我完全可以直接在客户区实现好友列表,不必费那么多事。2、文中我已经讨论了不用弹出窗口实现的方法,“只要将子控件的WM_PAINT所绘制的图像AlphaBlend到目标图层就可以了。”应该就是我说的方法。3、我写这些文章的目的旨在抛砖引玉,如果你有更好的方法,请不吝赐教,期待你能公布这个方法。4、好象没有规定写文章不能猜测吧,猜测并不会误导读者。
      

  2.   

    说一下发布RingSDK的目的,这个库并不是有意为之,而是我多年编程过程中积累下来的。最初只是把一些经常要用到的功能封装成一些函数,建了一个静态库,方便自己编程,后来慢慢积累,函数越来越多,于是封装成类,再后来简单的封装也不行了,于是花了一段时间进行整理设计,基本上是重写了这个类库,于是就有了这个界面和图象库,是对过去自己编程写的代码的一个总结与整理,方便自己的编程,共享出来是与大家一起交流学习。因为界面库不兼容MFC,因此也没指望有多少人用,是朋友和同事劝我说这东东不发布太可惜了,于是就发布了,发布后又要我写点教程,于是就有了仿QQ的文章,仿QQ界面要拿API写是比较痛苦的,因此用了RingSDK,也是顺便推广一下,既然发布了,总是想吸引一下注意力的。要是这个系列文章动了什么人的奶酪的话,也不必如此着急,RingSDK并不是专业的换肤界面库,只是框架而已,要实现比较酷的界面,是需要配合图象库的。也许以后我会做个商业的换肤库出来,让MFC和其他语言都可以用。
      

  3.   

    RingSDK界面库没有资格更谈不上动谁的奶酪。
    我的建议是,将自己的思想整成熟再发布出来,否则大家看了你的文章耽误人啊。以后我们招的人估计都是看你文章学起来的,到时我们要花很大力气去矫正。累啊。
    你不要说RingSDK,就是我们开发的类似与WPF这样的界面库都不敢轻易发布,原因一定要给用户一个成熟稳定的并且理论成熟的东西跟大家分享。
    做一个半吊子工程,分享什么?我看膨胀一下你的私欲还比较贴切。
    看上去,你好无辜,感觉别人再批判你。
    不过你扪心自问,你在这里发帖没有其他念头?只是教大家一些知识?显然不是滴!
      

  4.   

    ringphone我支持你!!顶有了你这种人的开源精神,我(们)才能进步,大家才能进步,中国软件业才能进步,走自己的路管别人么样说去。自己爽就可以了。
      

  5.   

    支持ringphone 临风!!!
    开源出来大家学习是绝对没有错的
    倒是那些以为自己掌握了多少技术的
    神神秘秘
      

  6.   


    说这话,太恶毒了。一直觉得skin++是国内这个领域的老大,还挺尊重的。没想到你们就这点本事,一个还没有成形的开源库,把你们吓成这样。你们就这么两下子?
    前段时间在directui.com 下载了一个类似360的demo,说实话,很失望,离商业应用还有很大距离吧。比腾讯,迅雷这些公司的directui库差太多了。所以我觉得还是那句话,有这闲时间,好好做自己的产品。顺便给自己积累点名声,你这种需要以技术为根本的公司,别搞得太商业,别把自己身段搞的这么低。
      

  7.   


    兄弟,你也太会忽悠了吧。你这些怎么看也不像是软件截图啊。几张UI设计图而已,不过你们公司UI设计师设计功底还不错。
    直接给个下载链接不就得了。或者在电脑上截个图,不要拿这种东西来忽悠人。
      

  8.   

    这些案例都是我们公司设计并程序实现的,用的工具就是DirectUI,官网:http://www.directui.com
      

  9.   


    真TND大言不惭啊。
    知道谦虚怎么写不?
      

  10.   

    CSDN俨然已经成了产品发布会 哈哈
      

  11.   


    我们是较真文章中的技术问题!不是害怕那个库。你下载360的Demo只是个案例,不是开发库。DirectUI在2005年就应用于商业了,怎么到今天你还说离商业太远呢?用DirectUI的公司都已经搞上市了。你也太孤陋寡闻了吧。
    我们当然知道好好开发我们的产品,不过对于谬误的文章有这个责任站出来纠正!这是公德心。
      

  12.   


    上面不是有人说DirectUI离商业太远吗?我就提供几个图给你们看看离商业远不远?
    不是产品发布会啊,在这里发布产品,那不被你们全搞砸啦。
      

  13.   

    大家稍安勿躁
    我想楼主只是想给RingSDK一些建议,不需要讨论到RP上面去了
      

  14.   

    不知您是什么水平呢?
    至少我看过临风的代码,写的很不错,单个人力量能把WIN32 SDK用自己一套方式表现出来已经非常不容易了。虽然不用ringsdk(代码风格和用法和自己差别比较大),但试问多少人有开过源?
    言多必失,ringsdk写的也许是有错误,你要字字珠玑,就如有人对谭浩强的C++程序设计教科书的反驳一样,看了让人好笑。
    LZ这篇文章似乎再引导别人看你的解决方法,而你却推荐的是一个商业产品。而且LZ的历史帖子,大部分都是宣传自己产品。
      

  15.   

    看得出,发发财同学对ringphone同学有很强烈的排斥感。莫解释了,至少我从ringphone同学身上学到的比你的多,在CSDN这个做技术交流的平台上,孰胜孰劣呢?呵呵
      

  16.   

    排斥RingPhone? 有必要吗?
    如果坛子里其他朋友也出有误的文章,我照样也要写纠正,这是我的责任,当然也是你们的责任,知道了不写,那才叫无耻!
    如果一个社区只是一个观点,不是很奇怪吗?你们学到什么了?他讲的这些你在书本上都能找到的。
    学到这些就很感激了?
    什么才是最宝贵的?几乎没有几个人能解决的地方,有人提供解决方案了那才叫珍贵啊。
    哪怕坛子里所有的朋友都反对我现在的做法,我依然坚持。
    真理往往在少数人的手中。
      

  17.   


    1.有必要,如果我是你的位置,我可能会这么做,人的劣根性嘛,但你的手法实在不敢恭维
    2.未见到你对除了ringphone的帖子,还有什么指导性的高见
    3.社区只有一个观点,就是共通有无,书本上能找到的东西很多,好理解的不多,在有经验的基础上结合个人观点的理解更少,所以挺感激的
    4.你提供的解决方案也很好,没有说过你的东西不好,但很多情况下为了学习的目的,不是需要商业的解决方案
    5.你当然会坚持,这是你的饭碗祝你继续做出国产软件的精品,也希望看到更多ringphone的好文章
      

  18.   

    关于你说的第一点,我不会这么做,因为RingPhone与我们不是竞争关系。出评论的文章的目的很简单,既是责任也是希望得到大家的关注,当然无所谓是赞同还是反对。很希望大家对我提出的方案能有耳目一新的感觉。不过看样子没有达到这个目的。呵呵。第二点,你可以到我回复的其他帖子中看看我给大家问题的解决方案。其他3点我基本上认可你的说法。好了,大家都努力吧。
      

  19.   

    大家都是混口饭吃,每个人都不可能不犯错误,每个人都没有不可原谅的错误,还是别放在心上了吧,吵架实在不好。本来我的作品也属于这类,也想商业化,也想过开源,不过远没到做最终决定的时候,无论结果如何先继续做着吧。也正因为远未成熟,所以从来也不敢堂而皇之地推广(有时顺便打打小广告不算推广,只是想让更多人了解一下这个作品而已),现在只是在自己的网站上写多点介绍文章,介绍一下作品的设计特点,并尽可能把文章写得详尽一点,方便他人试验。至于DEMO,我还真没有认真做过(说实话也做不出来),楼上诸位同行的产品中,无论是谁做的DEMO都比我强,短期内我还是不会做DEMO,因为还有很多文章要写,不然没人知道我的作品该怎么用,也没人知道我的作品特点是如何体现的。几位同行的帖子我基本上都会看的,更多是想吸取点经验,认为好的也会顶一下,从来没把任何人当作竞争对手。“竞争对手”这个词很强烈,无论在商业上还是技术上,感觉像敌人一样,不过我没这种感觉,我最大的快乐就是设计出用户喜欢的作品,喜欢在细节上吹毛求疵,这点我特别欣赏腾讯的做法……非常关注细节,且从不张扬。估计也正因为这个特点,腾讯QQ才得以成为大家踊跃模仿的对象。再说点技术方面的,在我心目中,界面技术做的最好的就是 QQ 和 SKIN++,不过它们侧重点不同。
    SKIN++的界面是他们吃饭的家伙,已经做了好多年了,关注的重点是换肤,能制作出非常专业的界面。但我感觉他们的DIRECTUI并未给客户带来实质上的好处(注:个人观点,也许说得不对,也许我还了解得不够多,请SKIN++谅解),同一种界面换一种方式来做而已,感觉对客户来说没有实质的改善,比如相比非DIRECTUI版本减少了成本?提高了开发效率?我真的看不出来。
    QQ(这里特指2009)在界面上所花的工夫绝不比SKIN++少,也非常细致和专业,如果腾讯把这套玩意儿上市,对SKIN++绝对有很大的冲击,不过腾讯吃饭的家伙是服务,不是这个,因为QQ是免费的,他们做DIRECTUI的目的可能是为了使QQ的使用更安全,也可能为了进一步抬高竞争门槛(还是别提竞争了,连模仿的门槛都很高,这也是我不敢模仿的原因)。很晚了,不能再说了,我继续写文章去。
      

  20.   


    楼上分析的还是比较用心的。不过有一点我不同意你的说法:“同一种界面换一种方式来做而已,感觉对客户来说没有实质的改善,比如相比非DIRECTUI版本减少了成本?提高了开发效率?”
    DirectUI属于正向界面开发工具,使用方式类似于VisualStudio,不过在界面开发上要比VS方便N倍。
    Skin++属于反向界面换肤工具。我这里用了2个词“开发工具”与“换肤工具”。这2个词就道出了2个工具之间最本质的区别。
    限于篇幅,在这里不做过多的介绍。如有兴趣的朋友可以直接与我们联系相关技术细节。www.uipower.com
      

  21.   

    占位,回来慢慢分析你们几家UI和RingSDK之间的牵扯
    说实话,我还是很支持RingSDK的……
      

  22.   

    随着开发工具的逐渐强大,操作系统的日益美观,至少我在Win7中感觉界面并不那么重要了.
    单纯靠界面皮肤库来支撑的纯软件公司如何走得更好,更远.想也了解一下.
      

  23.   

    你说的也是有一定道理的。但是同一界面看久了就不会觉得那么好看了。
    正如从Windows 98到Windows XP,界面的更换肯定非同一层次的。
    Windows XP到Windows 7又何尝不是这样呢?
    等到哪一天,Windows XP消失了呢?
    不过现在.NET做界面已经简单了很多了。
    不知道到时候会不会直接把界面制作弄得简单到很普通……
      

  24.   

    out了,第一次知道还有RingSDK
    开源的东西要支持.不管好与不好那也是作者的心血.顺便说下我的免费库skinmaster. 最近太忙只修了两处bug,1.0.5.1版,新地址http://download.csdn.net/source/2270159最近好多人管我要源码,先不要向我索要了,http://download.csdn.net/source/1579621 有部分示例不过是用颜色画的,可能我会开源这一版的源码.
    等工作不忙了我多做几套皮肤,这一套太难看了
      

  25.   

    看了这回贴感觉这发财兄fafacai与色兄skinse是一路的?同一个人两个马甲?RingSDK精神很不错,当然安装配置麻烦一点。其实那个微软那个sdk只是在toolbar中用到了,去掉toolbar即可。当然那些工具类写得不是很好,当然作者肯定是对windows的消息机制是非常了解了。一个人重写个类MFC的东东也不是不可能。非常佩服RingSDK作者!我只是一个新手。正是色兄所说的新手。对UI也接触的很少。不过感觉安装配置ringsdk还是不难的。
    至于会不会乱引导我这样的新手的话,我觉得无所谓吧,skin++一个商业的公司跟这开源的那肯定是水火不相容了,这也能怪,不过我最恨就是在这种技术论坛上打广告的贴!
    不说了,大家有机会还是看看ringsdk吧,有地方的自己修改一下就行了。蛮好的。
      

  26.   

    楼主一开始就是带有强烈的私人意图的,根本就不是想讨论和解决问题的,因为他根本就不把解决方法发出来,而是要别人去他们网站。鄙视。
    支持开源的ringSDK,起码可以在源码中学到不少,相信每个人都有自己的编程习惯,并不会因为别人怎么写的就被影响。
      

  27.   


    一个劲的通过踩人家的ringSDK来抬高和卖自己的广告和产品,不管怎么说ringSDK的开源才是重点,无意开源又来说三道四,首先这是对劳动者不尊重,二来也不尊重学者。
    我觉得这不是自私不自私的问题,而是中国人这几十年党的“素质”教育造成了中国人的拜金主义盛行。看看国外的许多的开源软件吧,甚至许多国人就直接从别人的开源源码中获取,就当作自己的宝。如果说普遍中国人都懂英语,那么秘密便不是秘密,所谓的秘密总是对中国的自己人。正如政府所说的国家机密,都是外国人知道的而国人不给知道的,这不讽刺吗?
    说到底就是,中国人喜欢窝里斗,自己人吃自己人,最拿手了。
      

  28.   


    那么请这位仁兄来我的文章作个评论吧: 
    如何在MFC内实现雪花动画
    不知道我有没有误导各位VC的爱好者?
      

  29.   

    前几天偶然知道ringsdk的,不说开源这个事,单说你可以通过源代码学习也不错吧。
    然后蛋疼的看见这个老贴,接着看到skin++和skinse的高手们在“交流”“指导”,忍不住就实在不好意思的出来挖坟回帖了首先很遗憾当ringsdk出来的时候正好是我前一份工作(工作内容也算是ui吧)快辞职的时候,所以当时没敢上时间好好喷。遗憾啊。。然后说说ringsdk的事,有“高手”很是BS,嘲笑人家误导别人,结果自己的帖子里很是NB的说了几个问题,结果还有个很是装B的指出有另外的方法,然后也不说出来。
    再然后不断鼓吹skin++,directUI什么的,我的看法是skin++,directUI是好啊,我从客观的角度来说他是很好,可能也很方便,不过关我P事,我又没钱买你产品,买了你们的产品,不买最高级版本的连源代码也有,只能用用而已,有什么了不起的,我又学不到东西。况且我也买不起,我当时也就一学生,实习的时候碰到个menu的重绘的问题,结果搞了半天也搞不定边框的问题,问了CSDN也没什么人知道,当然也有可能有人知道,比如你们这些“高手”,不过你们知道不代表你们就会说出来。反正当时那个郁闷的只能放弃边框的绘制了算了不扯淡了,直接说我自己的感受:
    强烈BS那几个界面公司,你们做商业的,卖这种解决方案的,既然把源代码看的这么重要,我就不信你们会公开一些主要界面制作的难点给任何人(你的客户大人给你钱你估计会给的)。我如果去你们什么鸟directui,uipower网站上留言问你怎么搞定这些问题的,鬼才信你们会回答。
    你UI高手就了不起啊,看见别人公开一些源代码不爽啊,人家写的不好,你要说这个人家也能接受,你吹嘘自己的UI搞P啊,还有你让别人不要拿不太成熟的出来,我觉的这个很好笑,微软当初第一个版本的系统出来难道很成熟吗?问题不要太多,有问题慢慢解决就好了,难道你们公司发布的什么软件,工具啊一发布就完美了?扯淡吧你,再说了人家不要钱,你什么时候吧你们那个鸟东西开放了在说吧。、。任何再垃圾的东西有人开源就是好事,不管多垃圾都是好事,是个东西都能让一些人学到东西,只是层次不同罢了。至于开源了以后谁能继续存活,谁最终被淘汰那是程序员,是开源项目使用者说的算,管你们这些专业UI公司鸟事,是不是人家开源一套UI解决方案非常非常好,很是成熟的时候你就会鼎力支持了啊,除非你秀逗了最后再次个人BS这几个很叼的UI高手以及他所谓的“指导"的内在所有的任何不良企图。
      

  30.   

    这个也有道理,就像MFC的初学者一样,有个类MFC工程建立向导的话更好入门,当初记得学MFC的时候也不理解,慢慢多了才看透,要不是向导我就不用它了,不过从ringphone的发布初衷来看,他原本不想发布是同事朋友鼓励他这么做,发布时没有想到这么多,我们需要理解~既然是开源的,有什么需要改进的当然也要大家努力改进了,希望能有个社区什么的
      

  31.   

    我看你脸皮真厚,你有什么资格吗,你的技术比别人高多少,你是行业标准吗,还上来给别人纠正什么,什么东西都有发展的过程,你公司的产品一开始就是完美的吗,你敢说吗?你觉得vs2010刚发布的版本好用吗,这么大的产品,而且以营利为目的的,不也有很多问题,还不是都在等sp1出现吗;可能ringSDK工程会有问题,因为人家ringphone并没有想做的非常工程化拿来赚钱,只是把自己的想法和劳动成果贡献给大家,你们有这种魄力吗,你们不敢,否则你们就没饭吃了你们不敢轻易发布什么类WPF的界面库是因为你们是商业化的,一旦有啥问题发布出去你们公司的名声就臭了,ringphone的ringsdk人有什么可怕的,我不给人索取什么,大家要觉得好用就用,碍着谁了?
      

  32.   

      你的心态挺好揣摩,看着可能会被一个开源的产品抢走了你们潜在的客户,先考察下这个产品能发现些bug就公布下,可你纠正为什么不去ringphone的博客去纠正还要专门开一个帖子呢,纠正玩别人的再附上自己的网站链接~这种方式让别人怎么不怀疑你的心态呢,你的初衷仅从技术角度的纠正吗????
      其实你越是这样潜在客户流失的越快,桃李不言,下自成蹊,ringsdk会得到更多人的追捧,我们普通程序员看产品不光看产品表面,还要看做产品的人或团队的
      不信你看看上边帖子有几个在顶你的~