使用CEF(CEFGLUE)作为您的客户端UI(一)

背景:

  本人是一名C#开发者,而作为C#开发者,做客户端应用中最头痛的一件事就是没有一个好的UI解决方案。WinFrom嘛,效率虽然还不错,但是做一些特殊的效果,完全应付不来,比如透明控件。比FPS太低有时候界面闪动得厉害。而WPF呢,内用内存又太高,效率是硬伤,而且还可能会出现内存泄露!

出于以上的原因,博主一直在寻找一个好的UI解决方案,最终选定CEF。(至于CEF是什么我就不解释了,可以百度!),在C#中CEF的一个开源项目,名称叫做CEFGLUE。(官网)。

CEF分为CEF1和CEF3.CEF1是单进程的,性能差一些,但是开发相对于CEF3要简单得多。但是为了得到更好的UI效果比如HTML5和CSS3运行得更好,博主选择CEF3.

正题:

    第一篇作为入门,就先把CEF配置并正确运行起来。

1.下载Cefglue框架。点我进入官网

点击Source Code,然后进入另一个页面,点击Download

然后再跳到另一个页面,找到最新的版本,点击ZIP下载

2.下载好了CEFGLUE,接下来就要下载CEF了,在下载CEF之前,我们需要知道该版本的CEFGLUE支持哪个版本的CEF。

我们可以在Commet,提交的信息中看到作者更新到了哪一个版本。

博主目前的是1750.1644,现在可以去下载CEF内核了。点我进入官网下载

找到大分支为1750,小分支为1644的CEF,并且是32位的版本

点击More Versions就可以看到更多版本

3.把CEFGLUE项目源码解压出来,并用VS打开

打开后,发现有10个项目,有一部分并不是必须的,为了更简单明了,卸载(也可以直接移除)掉一些不必要的项目,只留下如下图的三个,并把WinForms设为启动项目。

然后把项目全部改为X86的方式编译,然后.NET版本改为4.0,然后如果CEFGLUE中的项目属性--调试下面的启用Visualstudio承载进程的勾如果是勾上的,请去掉。

然后把项目运行方式从Debug 改为Release.(好像用DEBUG的话直接运行会一直白屏)

然后把下载好的CEF内核解压,把Release下面的东西全部复制到Winforms项目的bin/release低下。

然后,DEMO就正常运行起来了。。。如下图,是一个浏览器。为了把它变成UI,下节我们再开始改造它。

使用CEF(CEFGLUE)作为您的客户端UI(一)

时间: 2024-11-07 22:59:51

使用CEF(CEFGLUE)作为您的客户端UI(一)的相关文章

四则运算安卓客户端UI截图(部分)

1.我们组安卓手机客户端UI设计主要由林培文同学负责,界面中用到的素材全部由他一人用PS制作,所以在素材来源上当属原创啦.正因为UI由一个人设计,同时他还得分担少量后台代码的编写,颇多的工作量与人才短缺难免会导致UI设计上存在一些不足之处有待优化.当然在界面上我们尽最大可能地保持了其原创性,这也是我们组本次作业的亮点之一吧.废话少说,直接上图: (1)登录注册界面   (2)客户端主界面   (3)做题界面   (4)错题重做-->错题列表(单项条目可点击)   (5)排行榜界面   (6)统计

Android应用开发-小巫CSDN博客客户端UI篇

Android应用开发-小巫CSDN博客客户端UI篇 上一篇是给童鞋们介绍整个项目的概况,从这篇博文开始,后续也会详细介绍整个客户端的开发,但不会贴很多代码,我会贴核心代码然后提供实现思路,想看里面更详细的代码的可以到我的资源页下载源码进行查看,之前上传到github的少了些jar包,所以我在csdn下载频道也上传了一份,地址:http://download.csdn.net/detail/wwj_748/7912513. 整个客户端的开始,自然是需要搭建一个承载我们数据的框架,我这里所说的是U

CodeFirst写界面——自己写客户端UI库

何谓CBS程序 CBS程序就是Client+Browser+Service的程序 纯CS程序写界面,有各种难处,那么我就在Client端引入Browser,让Browser渲染基于HTML的UI界面 何谓WUI 就算用用HTML渲染UI界面,那么开发人员还是要掌握HTML+CSS+JS的知识,这些知识还是比较复杂的 WUI库就是把HTML+CSS+JS封装成起来,组成一个界面元素库,(类似于Extjs和easyui) 意图是让开发人员就只要掌握C#代码,就能写出漂亮的UI界面 第一步:WUI库中

手机客户端UI测试常见的测试点

1.各种分辨率下,显示正常.现市场上主流的塞班V3系统手机为240*320.320*240.WM系统主要为240*320.320*480.Android系统主要为320*480,Iphone系统为320*480.在产品确定设计前在哪些系统中些屏幕下运行.测试将对不同的屏幕下对UI在不同的机型个测试效果. 2.前景色与背景色搭配合理协调,反差不宜太大,最好少用深色,如:大红,大绿等,常用色考虑使用手机系统的界面色调.对于UI在设计上的用色,测试可以提出很多宝贵的意见,只有图片跑在手机系统才可以更好

Andriod文件下载含服务器端(客户端 UI界面异步请求部分)三

本文采用AsyncTask来实现异步请求,具体代码如下: public class downloadActivity extends Activity { private TextView myTextView=null; private Button button=null; private static final String path="http://192.168.0.179:8080/Myweb/download.do"; private ProgressDialog pr

自己动手写客户端UI库——事件机制(设计思路大放送)

在上一篇文章中我们创建了一个Button控件,并把这个控件显示在界面上, 在这一篇文章中,我们将为这个控件增加一个事件和一个方法 一:怎么绑定事件的问题 在Winform中,我们对一个按钮绑定事件的方式如下(这是真正的事件) 然而,在WUI库中,为一个按钮绑定事件是这样的,(这不是一个事件,这只是调用了一个方法,给这个方法传递了一个i额委托) 问题: 为什么会有这样的差异呢?实在是无奈之举(也希望园友多提意见) 回答: 我们在给一个WUI按钮绑定事件的时候,这个按钮有可能已经呈现在界面上了:也有

自己动手写客户端UI库——创建第一个控件

在上一篇文章中我们主要讲了C#如何和JS通信, 这一篇文章中,我们将创建一个最基础的Button控件 WUI库中控件的继承机制 我们先解释最简单的继承机制,以后WUI库的继承机制会比这个复杂的多 第一:PanelMain类 我们在上一篇中说了,PanelMain是一个特殊的Panel,每一个用户程序都应该自己实现一个PanelMain类的子类,用户把这个子类的实例交给WUI库,WUI库把这个实例当作第一个容器控件添加到窗体中,WUI库告诉用户什么时候这个用户控件创建完毕,用户可以在PanelMa

Week2 Bing词典Android客户端案例分析

一.软件调研 运行平台:Android 4.4.4 必应版本:5.2.2 1.bug发现 1.1 bug标题:单词挑战无法加载和刷新 bug详细描述:学习界面中的单词挑战模块,点击后没有任何反映,并且点击刷新也一直显示“加载失败,请稍候重试” bug严重程度:一般 bug优先级:重要不紧急 bug类型:内容相关 2.采访软件用户了解软件 用户背景:北航计算机学院大三学生 学英语的目的:准备出国的相关语言考试 用户使用软件的照片: 数据量:单词数据量充足,能够满足使用 界面:界面简洁易用 功能:功

使用Socket通信实现Silverlight客户端实时数据的获取(模拟GPS数据,地图实时位置)

原文:使用Socket通信实现Silverlight客户端实时数据的获取(模拟GPS数据,地图实时位置) 在上一篇中说到了Silverlight下的Socket通信,在最后的时候说到本篇将会结合地图.下面就来看看本文实现的功能: Silverlight 与服务器利用Socket通讯,实时从服务器获取数据(本文中的数据是地理坐标),由于没有GPS,所以本文在服务器写了一个构造新坐标的函数(本文是一个三角函数),然后利用Timer组件,实时调用,得到新的坐标,并将新的坐标发送给客户端,客户端接收到发