万星星@豌豆荚 欢迎加入我们
一个吃软饭的男人!!!!!我只想写程序####
微博:http://weibo.com/wanlianwen
posts - 172,  comments - 1253,  trackbacks - 0

无窗口richedit的机制基本实现,剩下的是接口调用封装和事件的设计。

一周的时间添加了无窗口richview,机制上没有采取任何hack方式,完全靠实现ITextHost接口以及作用ITextService接口:
1、支持输入法编辑
2、支持滚动(暂时没有滚动条,待添加!)
3、支持拖拽

主要参考的示例为微软的例子windowlessre,由于chrome的view自身封装的限制导致实现的时候有许多框架(封装)引入的障碍,为了尽可能少的改动引擎自身,我只做了很少的平台依赖调整,很多时间都消耗在框架机制上。
至于一些颜色、字体、文本操作、ole图片的接口、事件和mvc的抽象在接下来会实现,应该没有太大难度了,确保控件的精细控制和完美解决方案。代码已经上传svn: http://code.google.com/p/x-framework/

截图:



实现无窗口的activex控件支持(flash mediaplayer) .net控件  wpf控件







花了许久才把activex这块处理完整,实现了无窗口的flash mediaplayer,支持容纳webbrowser以及html文档,至于sl插件的支持也会考虑,下一步会转向无窗口的richedit重构和功能完善:






sl插件支持:
posted on 2011-06-04 13:47 万连文 阅读(5111) 评论(25)  编辑 收藏 引用 所属分类: 小作品

FeedBack:
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-04 15:38 | Skill
谢谢 一直在关注你的博客 我也是一个Chrome疯狂爱好者 兄弟 努力 加油!  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-04 16:34 | liquanhai
支持楼主的贡献,我会继续关注  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)[未登录]
2011-06-05 09:40 | jacky_zz
持续关注ing  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-06 11:17 | Skill
万兄 什么时候会支持ListCtrl TreeCtrl TabView类似的控件呢?
这几个可是开发中必备的
多谢赐教!  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-08 15:53 | H.D.Huang
QT已经实现了你说研究的功能,而且实现的相当完美了(我认为是这样)。甚至实现用CSS描述界面,而且是写在C++代码中的哦.我也研究了CHROME差不多半年多了,才发现原来这东西又是有人早就做了。同事都笑我呢。汗。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-08 16:47 | lgh
能否实现chrome里面那种tab效果,字过长的时候字的颜色会渐渐变淡,拖拉的时候还有点动画效果,很强大  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-08 19:21 | 万连文
@H.D.Huang
这个在我开始研究chrome之前已经知道了,只是.... 我觉得不太一样  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-17 20:59 | zp
无窗口richedit的资料确实又少,这几乎是做UI的一个门槛,博主加油!  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-06-18 22:52 |
哥们,好像可以跨平台吧,移动平台支持不?  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)[未登录]
2011-06-27 16:55 | vane
拖动窗口边框后程序就有问题了 标题栏不能在拖动 而且有时候标题栏就不在了,另外,native_browser_frame.h wan_chorme工程缺少那个文件  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)[未登录]
2011-06-27 23:22 | 万连文
@vane

OK,这个问题是我自己引入的bug,我会在后面消除掉。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)[未登录]
2011-06-28 09:45 | vane
@万连文
virtual void OnWindowBeginUserBoundsChange()
{
//window()->SetUseDragFrame(true);
}

virtual void OnWindowEndUserBoundsChange()
{
//window()->SetUseDragFrame(false);
}

这个里边的问题
缺少文件的更新了么?  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-07-01 16:51 | ss
DirectUI确实是现在的主流技术。
html+css用来做界面也很诱人,特别是有jquery、YUI等库,能够很容易做到界面逻辑分离。
现在的网页都做得很漂亮,但最担心效率问题,webqq让我看到了复杂界面也相对流畅。
最近有在打算用html+vc来做界面,搜集资料看到兄台07年就开始做这方面研究确实佩服。请问兄台当初放弃的原因?是效率不行?不够方便?还是?不知这方面是否有可行性。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-07-05 16:42 | vanehu
请教一个问题, google 拖动tab的 出来的那个窗口是真的一个窗口么?  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)[未登录]
2011-07-05 19:31 | 万连文
@vanehu

是一个layered窗口。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-07-11 15:41 | weolar
@ss
一是效率确实不高,二是如果用ie控件,问题很多,比如用户改个注册表设置可能就会导致显示的字体不是你想要的,同时ie版本众多,你控制不了。三是如果用别的html引擎,又难以找到轻巧、无bug的。如果用webkit这类,又嫌太重量级。
  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-07-19 21:18 | hlqyq
谢谢你所作的努力和工作,一直有些想法:
1、构建界面还是需要使用代码,如果提供一个适配层,使用xml描叙动态构建界面(类似于xul)就好了,将界面构建与业务功能分离。
2、使用python作为业务代码与界面的glue
3、使用CSS和HTML作为界面描叙构建,将行为可扩展,参见Htmlayout.  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-07-19 23:00 | 万连文
理想的东西总是那么不可及,就像我们政治书本中的gc主义,控制和易用总是矛盾的,我会一直努力。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-07-29 20:01 | Charm
那个展示tab控件的例子 svn上有吗?  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-08-19 16:34 | ces
SVN代码编译chrome失败,缺很多文件.
建议忠实chromium原来的目录结构,这样更新比较容易.  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-08-19 16:51 | ces
尽量和chromium一致,才便于跟上chromium步伐,如
view最好改为views  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-08-19 17:27 | 万连文
@ces

目前来讲已经基本上保持了一致,基本上跟上chrome的进度,也在添加自己的扩展,之前确实冲动做了一些随意的修改。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-08-22 09:48 | ces
SVN代码编译chrome失败,缺很多文件.  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-08-22 10:23 | 万连文
@ces
chrome那个工程没有维护下去,因为我的目标不是要做一个浏览器或者实现chrome,在有精力的时候我会考虑模仿一个界面出来,但是目前还在做一些其他的事情。  回复  更多评论
  
# re: 基于Chrome开源提取的界面开发框架 三(.1.5)
2011-08-31 09:53 | ces
看见了,不错啊,多谢!  回复  更多评论
  

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


简历下载
联系我

<2011年6月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

常用链接

留言簿(66)

随笔分类

随笔档案

相册

搜索

  •  

最新评论

阅读排行榜

评论排行榜