背景色

VC重绘如何防止控件闪烁

▼魔方 西西 提交于 2020-02-21 03:56:28
用MFC如何高效地绘图 TouchMe 显示图形如何避免闪烁,如何提高显示效率是问得比较多的问题。 而且多数人认为MFC的绘图函数效率很低,总是想寻求其它的解决方案。 MFC的绘图效率的确不高但也不差,而且它的绘图函数使用非常简单, 只要使用方法得当,再加上一些技巧,用MFC可以得到效率很高的绘图程序。 我想就我长期(呵呵当然也只有2年多)使用MFC绘图的经验谈谈 我的一些观点。 1、显示的图形为什么会闪烁? 我们的绘图过程大多放在OnDraw或者OnPaint函数中,OnDraw在进行屏 幕显示时是由OnPaint进行调用的。当窗口由于任何原因需要重绘时, 总是先用背景色将显示区清除,然后才调用OnPaint,而背景色往往与绘图内容 反差很大,这样在短时间内背景色与显示图形的交替出现,使得显示窗口看起来 在闪。如果将背景刷设置成NULL,这样无论怎样重绘图形都不会闪了。 当然,这样做会使得窗口的显示乱成一团,因为重绘时没有背景色对原来 绘制的图形进行清除,而又叠加上了新的图形。 有的人会说,闪烁是因为绘图的速度太慢或者显示的图形太复杂造成的, 其实这样说并不对,绘图的显示速度对闪烁的影响不是根本性的。 例如在OnDraw(CDC *pDC)中这样写: pDC->MoveTo(0,0); pDC->LineTo(100,100); 这个绘图过程应该是非常简单、非常快了吧

(8)Microsoft office Word 2013版本操作入门_制作传单海报

若如初见. 提交于 2020-02-14 02:07:49
1、纸张大小,方向设定。 1.1纸张大小: 【页面布局】----【纸张大小】 可以选择已有的尺寸,也可以选择其他自定义的大小。 1.2 方向设定: 【页面布局】--【纸张方向】选择 横向或者纵向 2、背景设定 2.1页面背景色设置:【设计】---【页面颜色】-选择颜色或者设背景 页面颜色设定: 打印时不显示页面背景色:可以点击【文件】--【选项】--【显示】勾选上复选框,打印之后就可以显示背景色。 2.3 插入一个圆形背景 【插入】---【形状】 --选择一个椭圆形, 按住shift 拖拽 即可画出圆形。 鼠标选中圆形 点击【格式】 可以设置图形的边框等信息 3、页面边框: 【设计】---【页面边框】 边框和底纹: 4、插入图形: 裁剪,对图形进行抠图,旋转图形,加阴影效果。 4.1 插入艺术字:【插入】---【艺术字】 输入艺术字内容后 选中后 点击【格式】---【文本效果】进行设定 4.2 插入文本框 :【插入】---【文本框】 选择已有的样式或者自己绘制 4.3 项目符号添加: 来源: https://www.cnblogs.com/prefectjava/p/9156884.html

改变对话框的背景色

别来无恙 提交于 2020-02-09 07:34:19
  改变对话框的背景色需要在该对话框类中添加WM_CTLCOLOR消息,在该消息中改变背景画刷即可。   1.首先在对话框类中添加一个成员变量CBrush m_brBrush,并在构造函数中创建该画刷: 1 m_brBrush.CreateSolidBrush(RGB(255,255,0));//创建红色画刷 函数原型 :HBRUSH CBrush::CreateSolidBrush( COLORREF crColor )    函数功能 : 创建一个具有指定颜色的逻辑实心刷子, 画笔可以随后被选为任何设备上下文的当前刷子。    参数解释 : crColor:指定刷子的颜色。    返回值: 如果该函数执行成功,那么返回值标识一个逻辑实心刷子;如果函数失败,那么返回值为NULL。 2.添加WM_CTLCOLOR消息,添加如下代码 1 HBRUSH CRectTran::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 2 { 3 HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); 4 5 // TODO: 在此更改 DC 的任何属性 6 7 switch(nCtlColor) { 8 case CTLCOLOR_STATIC: 9 pDC->SetBkMode

Delphi工具之Image Editor

爷,独闯天下 提交于 2020-02-01 10:57:04
Delphi Image Editor是一个工具,可用它来创建并编辑位图(.bmp)、图标(.ico)和光标(.cur),还可以用它创建资源工程,将多个位图、图标和光标包含到单个资源文件(.RES)中,再将该资源文件加到Delphi工程中供需要时使用。如下图,是正在编辑中的Image Editor。 Note 所有的Windows图像都是位图,无论它们是真正的Windows位图文件(.bmp),还是图标或光标。在我们的讲解中,将所有图像都称为位图。Image Editor只能处理Windows位图文件,它不支持其他文件格式,如PCX,TIFF,JPEG和GIF。 可从开始菜单中选择Image Editor菜单项启动Image Editor,也可以从Delphi的主菜单的【Tools | Image Editor】菜单项打开(如下图)。Image Editor是一个单独的程序,不必在Delphi IDE中运行它。 Image Editor的各个部分介绍 上图中将所有的工具箱中的工具名称列出,请熟悉它们。 Marquee选区工具和Lasso套索工具的作用一样的,前者用于选定矩形区域,后者用于任意形状的选择。 当一个区域被选定后,用户可剪切或复制该区域内的图像。用Marquee和Lasso工具选定区域,将鼠标光标移动到该区域内(鼠标光标变成如下图的手型光标),拖动鼠标

Android设置渐变背景色

别说谁变了你拦得住时间么 提交于 2020-01-31 02:04:52
设置渐变的背景色可以通过在res/drawable里定义一个xml,如下: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#FFFFFF" android:endColor="#000000" android:angle="45" /> </shape> shape是用来定义形状的,gradient定义该形状里面为渐变色填充,startColor起始颜色,endColor结束颜色,angle表示方向角度。当angle=0时,渐变色是从左向右。 然后逆时针方向转,当angle=90时为从下往上。 上面讲的是布局的背景色,下面再讲讲常用的按钮背景色: 首先写一个定义Button样式的XML文件: 新建Android XML文件,类型选Drawable,根结点选selector,文件名就buton_style吧。 程序自动给我们刚刚建的文件里加了selector结点,我们只需要在selector结点里写上三种状态时显示的背景图片(按下、获取焦点,正常)。 代码如下: <?xml version="1.0" encoding="utf-8"?> <selector

VC重绘如何防止屏幕闪烁

淺唱寂寞╮ 提交于 2020-01-29 03:04:09
用MFC如何高效地绘图 显示图形如何避免闪烁,如何提高显示效率是问得比较多的问题。 而且多数人认为MFC的绘图函数效率很低,总是想寻求其它的解决方案。 MFC的绘图效率的确不高但也不差,而且它的绘图函数使用非常简单, 只要使用方法得当,再加上一些技巧,用MFC可以得到效率很高的绘图程序。 我想就我长期(呵呵当然也只有2年多)使用MFC绘图的经验谈谈 我的一些观点。 1、显示的图形为什么会闪烁? 我们的绘图过程大多放在OnDraw或者OnPaint函数中,OnDraw在进行屏 幕显示时是由OnPaint进行调用的。当窗口由于任何原因需要重绘时, 总是先用背景色将显示区清除,然后才调用OnPaint,而背景色往往与绘图内容 反差很大,这样在短时间内背景色与显示图形的交替出现,使得显示窗口看起来 在闪。如果将背景刷设置成NULL,这样无论怎样重绘图形都不会闪了。 当然,这样做会使得窗口的显示乱成一团,因为重绘时没有背景色对原来 绘制的图形进行清除,而又叠加上了新的图形。 有的人会说,闪烁是因为绘图的速度太慢或者显示的图形太复杂造成的, 其实这样说并不对,绘图的显示速度对闪烁的影响不是根本性的。 例如在OnDraw(CDC *pDC)中这样写: pDC->MoveTo(0,0); pDC->LineTo(100,100); 这个绘图过程应该是非常简单、非常快了吧

跟我学做c#皮肤美化(五)

做~自己de王妃 提交于 2020-01-23 05:15:32
跟我学做c#皮肤美化(五) --MainForm窗体的制作2 前续文章导航 先来回顾一下我们上次遗留的问题 1. 消除图中不透明的地方 2. 实现标题栏的拖动 3. 实现窗体的最大化,最小化,关闭功能。 下面就来一个一个解决。 解决不透明的问题: 首先为什么会有灰色的出现呢。不难想到这些灰色就是Picturebox的背景色。边角上的图片对粉红色透明了,但却露出了背景的颜色。知道了原因就好了解决了,就是我们需要将这一块的背景色给透明掉。有人说可以讲picturebox的背景色设置为透明的啊。不错,是可以,但整个窗体的背景色呢?picturebox下面不还是有整个被覆盖的窗体的嘛!窗体是不能像用户控件那样背景色设置为透明的,不过却有一个属性TransparencyKey可以间接的为我们解决这个问题。这个属性的作用是这样的,当这个属性设置为某一种颜色后,那该窗体上的所有的这种颜色将都变为透明色。 所以我们只需将TransparencyKey的颜色和窗体的背景色设置成一样,那么背景色不就自动透明了嘛!在这里我们将所有控件的背景色和TransparencyKey都设置成系统里面的Info颜色(这个颜色你可以自己指定,不过不建议是原来的Control色,因为这样后你再添加一个普通的控件,那么这个控件的一部分也会被透明掉) 实现标题栏的拖动 因为我们的窗体是没有状态栏的

10-3基于TextField实现顶部SearchBar-2

这一生的挚爱 提交于 2020-01-21 00:32:52
为了看到效果在Search页面调用 实现onTextChange 搜索页,运行报错 这是因为我们的searchBarType没有传值。但是也没有设置默认值。 我们给这个两个参数都设置默认值 再来运行测试效果 但是并没有背景色 实现背景色 要实现背景色需要外层Contianer里面加装饰器。。最主要的是要实现装饰器。圆角首页是5,搜索页面是15 这样我们的背景色就有了。 定义有内容时候清空的差号。 根据属性是否显示Clear按钮。 callback是speakClick的回调。 如果显示Clear按钮包裹一个Icon图标。当用户店家这个Clear的Icon的时候,通过setState调用这个TextView的Controller.clrear()方法, 然后将它清空。同时调用onChanged将内容进行清空。 看效果 没有内容的时候,显示话筒按钮 被清空了的 设置左边的边距 首页状态下的输入框 首页状态下的输入框稍有不同,复制normal状态的输入框的代码做对比 复制到_genHomeSearch()方法内。 首先是对padding进行调整 我们这里放一个Row布局,左边我们放一个文字 “上海” 通过这个方法来获取首页的背景色 高亮状态下是黑色。非高亮是白色 黑色 白色 右边显示一个Icon。向下的箭头。背景色和输入框的保持一致。 右边放一个消息的Iocn 首页调用

无闪烁刷屏技术的实现,zhuanzai

喜夏-厌秋 提交于 2020-01-15 00:54:03
在实现绘图的过程中,显示的图形总是会闪烁,笔者曾经被这个问题折磨了好久,通过向高手请教,搜索资料,问题已基本解决,现将文档整理出来以供大家参考. 1.显示的图形为什么会闪烁?   我们的绘图过程大多放在OnDraw或者OnPaint函数中,OnDraw在进行屏幕显示时是由OnPaint进行调用的。当窗口由于任何原因需要重绘时,总是先用背景色将显示区清除,然后才调用OnPaint,而背景色往往与绘图内容反差很大,这样在短时间内背景色与显示图形的交替出现,使得显示窗口看起来在闪。如果将背景刷设置成NULL,这样无论怎样重绘图形都不会闪了。当然,这样做会使得窗口的显示乱成一团,因为重绘时没有背景色对原来绘制的图形进行清除,而又叠加上了新的图形。有的人会说,闪烁是因为绘图的速度太慢或者显示的图形太复杂造成的,其实这样说并不对,绘图的显示速度对闪烁的影响不是根本性的。例如在OnDraw(CDC *pDC)中这样写:     pDC->MoveTo(0,0);     pDC->LineTo(100,100);   这个绘图过程应该是非常简单、非常快了吧,但是拉动窗口变化时还是会看见闪烁。其实从道理上讲,画图的过程越复杂越慢闪烁应该越少,因为绘图用的时间与用背景清除屏幕所花的时间的比例越大人对闪烁的感觉会越不明显。比如:清楚屏幕时间为1s绘图时间也是为1s