- 博客(31)
- 资源 (19)
- 收藏
- 关注
转载 c# 双缓冲 技术与例子(解决应用程序闪烁问题)
GDI+的双缓冲问题 一直以来的误区:.net1.1 和 .net 2.0 在处理控件双缓冲上是有区别的。.net 1.1 中,使用:this.SetStyle(ControlStyles.DoubleBuffer, true); .net 2.0中,使用:this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);导致画面闪烁
2015-07-30 09:57:21 1084
转载 双缓冲技术(C# GDI)
c#如何实现防窗体闪烁的功能。大家都会想到运用双缓冲技术,那么在c#中是如何做的?1、 利用默认双缓冲(1)在应用程序中使用双缓冲的最简便的方法是使用 .NET Framework 为窗体和控件提供的默认双缓冲。通过将 DoubleBuffered 属性设置为 true。 this.DoubleBuffered=true;(2)使用 SetStyle 方法可以为 Win
2015-07-30 09:55:57 590
转载 C# GDI+双缓冲技术
GDI+的双缓冲问题 我想有很多搞图形方面的朋友都会用到双缓冲技术的时候,而且有的时候她的确是个头疼的问题。最近我也要用双缓冲技术,程序怎么调试都不合适,当要对图形进行移动时,总是会出现闪烁抖动。在网上找了些资料,说得都不清不楚的,折腾了一晚上也没弄出来。第二天觉定自己研究一下。现在把自己的一些想法拿出来跟大家分享一下。双缓冲的基本原理:(转) 一直以来的误区:.net1.
2015-07-30 09:55:09 607
转载 浅谈C#中的双缓冲
在编程当中,或多或少会接触到图像编程,对于图像编程来说窗口闪烁是个常见的问题,当窗口有大量的复杂的图元数据需要重绘,或者拥有自定义控件中的窗口闪烁问题更是显而易见的。出现闪烁的原因有很多种,大部分原因主要是因为触发WM_PAINT消息时窗体进行了重绘操作,此过程先是用窗体的背景色擦除窗口表面,再把窗体的图像绘制上去,但是如果这2个操作不在同一时间段完成的话,就会先看到背景色(大部分为白色)接着才看
2015-07-30 09:54:22 710
转载 MFC绘图不闪烁——双缓冲技术[转]
在VC/MFC用CDC绘图时,频繁的刷新,屏幕会出现闪烁的现象,CPU时间占用率相当高,绘图效率极低,很容易出现程序崩溃。所谓双缓冲技术,下面是百度百科的解释:我们看电视时,看到的屏幕称为OSD层,也就是说,只有在OSD层上显示图像我们才能看到。现在,我需要创建一个虚拟的、看不见但是可以在上面画图(比如说画点、线)的OSD层,我称之为offscreen(后台缓冲区)。这个offscreen
2015-07-30 09:52:31 486
转载 VC 双缓冲绘图
在图形图象处理编程过程中,双缓冲是一种基本的技术。我们知道,如果窗体在响应WM_PAINT消息的时候要进行复杂的图形处理,那么窗体在重绘时由于过频的刷新而引起闪烁现象。解决这一问题的有效方法就是双缓冲技术。 因为窗体在刷新时,总要有一个擦除原来图象的过程OnEraseBkgnd,它利用背景色填充窗体绘图区,然后在调用新的绘图代码进行重绘,这样一擦一写造成了图象颜色的反差。当WM_PA
2015-07-30 09:51:35 595
转载 VC 绘图,使用双缓冲技术实现
********************所有的GDI绘图函数使用的都是逻辑坐标(逻辑范围)**************************************系统默认情况下 物理范围和逻辑范围 是1:1 的对应关系*******************1. 首先定义类成员:CDC *m_pDC;CDC MemDC;CBitmap MemBitmap;CBitma
2015-07-30 09:51:07 848
转载 C# WinForm开发系列 - Open-Source Controls
整理了一些在WinForm开发中可以使用的开源组件.(文章及相关代码搜集自网络,仅供学习参考,版权属于原作者! ). 1. 仿office 2007的Ribbon风格面板(该控件模仿office 2007的Ribbon风格,显示操作面板。)2. .NET中最全功能的表格控件[翻译]Mathew Hall.著XPTable - .NET ListV
2015-07-29 14:46:51 1034
转载 C# WinForm开发系列 - ListBox/ListView/Panel
包含自定义绘制的ListBox, 带拖动,图片显示, 内嵌其它控件, 打印等扩展功能的ListView(文章及相关代码搜集自网络,仅供学习参考,版权属于原作者! ).1.ColorListBox ColorListBox.zip 2.RadioListBox RadioListBox.rar3.扩展CheckedListBox控件 ExChecke
2015-07-29 14:46:43 832
转载 C# WinForm开发系列 - 文章索引
该系列主要整理收集在使用C#开发WinForm应用文章及相关代码, 平时看到大家主要使用C#来开发Asp.Net应用,这方面的文章也特别多,而关于WinForm的文章相对少很多,而自己对WinForm一直比较感兴趣,这几年积累收藏了不少文章,现在整理一下分类推荐给大家,避免大家浪费大把的时间去找这方面的资料,因为找资料也是一件很累的事情,Google,Baidu一下,不断的点击,不断翻阅大量的博客
2015-07-29 14:45:51 533
转载 什么是流媒体技术
传统的网络传输音视频等多媒体信息的方式是完全下载后再播放,下载常常要花数分钟甚至数小时。而采用流媒体技术,就可实现流式传输,将声音、影像或动画由服务器向用户计算机进行连续、不间断传送,用户不必等到整个文件全部下载完毕,而只需经过几秒或十几秒的启动延时即可进行观看。当声音视频等在用户的机器上播放时,文件的剩余部分还会从服务器上继续下载。 如果将文件传输看作是一次接水的过程,过去的传输方
2015-07-29 14:43:12 804
转载 CMD网络命令
net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user:"用户名" 建立IPC非空链接 net use h: \\ip\c$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为 H: net use h: \\ip\c$ 登陆后映射对方C:到本地为H: net use \\ip\i
2015-07-29 14:42:22 761
转载 流媒体与视频监控开发相关博客文章系列收集
最近因工作需要转向流媒体开发这方面, 现收集一下相关bolg文章1. 旁观者 - 郑昀 [J2ME]手机流媒体之实作[附源码][与RTSP/MMS协议无关] 2. Bēniaǒ成长笔记 - 博客园 FMS系列 3.赤色火焰.Net学习手札 【原创】C#实现视频远程监控(下载)4.懒人居
2015-07-29 14:42:15 611
转载 关于 frame的一些基本知识
关于 frame的一些基本知识只是摘抄了一部分,供初学者参考。b.帧速率:帧速率是每秒显示的图像数。标准影片(NTSC) 是29.97 帧第秒 (fps),电影是每秒24 帧fps。欧洲标准是(PAL) 25 帧fps。如果你对你影片的尺寸不是太注重的话,保留默认的Current选项。这将会使你制作的影片的帧速率和源文件一致。不管怎样,如果你想降低带宽和CPU的占用,你可以选择一个低的帧
2015-07-29 14:41:24 637
转载 音视频同步-时间戳
音视频同步-时间戳 媒体内容在播放时,最令人头痛的就是音视频不同步。从技术上来说,解决音视频同步问题的最佳方案就是时间戳:首先选择一个参考时钟(要求参考时钟上的时间是线性递增的);生成数据流时依据参考时钟上的时间给每个数据块都打上时间戳(一般包括开始时间和结束时间);在播放时,读取数据块上的时间戳,同时参考当前参考时钟上的时间来安排播放(如果数据块的开始时间大于当前参考时钟上的时间
2015-07-29 14:39:08 873
转载 函数参数的传递问题(一级指针和二级指针)
原以为自己对指针掌握了,却还是对这个问题不太明白。请教! 程序1: void myMalloc(char *s) //我想在函数中分配内存,再返回 { s=(char *) malloc(100); } void main() { char *p=NULL; myMalloc(p); //
2015-07-23 11:16:22 581
转载 10个经典的C语言面试基础算法及代码
1、计算Fibonacci数列Fibonacci数列又称斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21。C语言实现的代码如下:/* Displaying Fibonacci sequence up to nth term where n is entered by user. */#include int main(){ int
2015-07-23 09:43:15 1728 1
转载 最值得阅读学习的 10 个 C 语言开源项目代码
点击打开链接伯乐在线注:『阅读优秀代码是提高开发人员修为的一种捷径』http://t.cn/S4RGEz 。之前@伯乐头条 曾发过一条微博:『C 语言进阶有哪些优秀的代码可以阅读?』http://t.cn/R72EdtY 。今天来看看 平凡之路 推荐的《最值得阅读学习的 10 个 C 语言开源项目代码》。1. WebbenchWebbench是一个在linux下使用的非常简
2015-07-23 09:24:06 627
转载 c语言,连接2个数组的方法???
首先你不能直接用静态数组连接,因为你无法控制编译器如何分配内存,事实上分配在堆上的数组是由操作系统分配的,因此你不能指望两个数组是连续排列的,所以连接数组只能重新分配一个能包容两个数组元素的新数组,并将两个数组的元素复制过去,然后释放掉原先的数组。用动态数组实现以下核心代码:int * Link(int *a,int lenA,int *b,int lenB) { int
2015-07-22 14:18:22 7890
转载 C语言:将输入的字符串(char* cp)存入字符指针数组(char * spa[])
在C++下面读入string类型,存入vector中非常的简单。在C语言下面读入string倒是很简单,但是要存入指针数组中貌似费了很大的劲都不行。C还是四年之前看过,对于C下面的字符串一直很恐惧,今天下定决心,要好好研究一下cp)存入字符指针数组(char * spa[])" title="C语言:将输入的字符串(char* cp)存入字符指针数组(char * spa[])" style="m
2015-07-22 14:17:34 5845 2
转载 C语言变长数组data[0]【总结】
1、前言 今天在看代码中遇到一个结构中包含char data[0],第一次见到时感觉很奇怪,数组的长度怎么可以为零呢?于是上网搜索一下这样的用法的目的,发现在linux内核中,结构体中经常用到data[0]。这样设计的目的是让数组长度是可变的,根据需要进行分配。方便操作,节省空间。2、data[0]结构经常遇到的结构形状如下:struct buffer{ i
2015-07-22 14:16:54 386
转载 数组-数组合并(C版)
[cpp] view plaincopyprint?#include /**从小到大排序**/ void sort(int array[],int length) { int i,j; for(i = 0; i for(j = i;j if(array[j]
2015-07-22 14:16:02 675
转载 浅析c++中virtual关键字
1.virtual关键字主要是什么作用?c++中的函数调用默认不适用动态绑定。要触发动态绑定,必须满足两个条件:第一,指定为虚函数;第二,通过基类类型的引用或指针调用。由此可见,virtual主要主要是实现动态绑定。2.那些情况下可以使用virtual关键字?virtual可用来定义类函数和应用到虚继承。友元函数 构造函数 static静态函数 不能用virtu
2015-07-17 15:01:13 511
转载 C++继承:公有,私有,保护
公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。1. 公有继承(public)公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。2. 私有继承(private)私有继承的特点是基类的公有成员和保护成员都作为派生类的私有
2015-07-17 14:59:44 383
转载 详解一道C++笔试题,考察重载、覆盖、多态
C++版看到的,说是面试宝典里的题目,考察重载、覆盖、多态等概念,比较有代表性。今天早上远程辅导 Yan Wang 同学学习 Qt 时还想到了这个题目,如果你能够正确理解这个题目,说明对于 C++ 中的函数重载、覆盖、虚函数、多态等有了正确的认识。然后呢,再来学习 Qt 就顺风顺水了。 题目是酱紫的:[cpp] view plaincopy
2015-07-17 14:58:01 385
转载 c++ 虚函数与纯虚函数的区别(深入分析)
在面向对象的C++语言中,虚函数(virtual function)是一个非常重要的概念。因为它充分体现 了面向对象思想中的继承和多态性这两大特性,在C++语言里应用极广。比如在微软的MFC类库中,你会发现很多函数都有virtual关键字,也就是说, 它们都是虚函数。难怪有人甚至称虚函数是C++语言的精髓。那么,什么是虚函数呢,我们先来看看微软的解释: 虚函数是指一个类中你希望重载的成
2015-07-17 09:58:19 463
转载 深入理解C++的多态性
C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphisn),字面意思多种形状。C++多态性是通过虚函数来实现的,虚函数允许子类重新定义成员函数,而子类
2015-07-17 09:56:25 379
转载 对C++多态性的一点理解
非常精辟,分享给大家 多态与非多态的实质区别就是函数地址是早绑定还是晚绑定。如果函数的调用,在编译器编译期间就可以确定函数的调用地址,并生产代码,是静态的,就是说地址是早绑定的。而如果函数调用的地址不能在编译器期间确定,需要在运行时才确定,这就属于晚绑定。抽空总结下对一直以来对C++多态性的一点个人理解:1.什么叫早绑定和晚绑定?早绑定指在对象声明的时候就和它
2015-07-17 09:32:46 441
转载 C++多态解释与例子
C++多态解释与例子 类的多态特性是支持面向对象的语言最主要的特性,有过非面向对象语言开发经历的人,通常对这一章节的内容会觉得不习惯,因为很多人错误的认为,支持类的封装的语言就是支持面向对象的,其实不然,Visual BASIC 6.0 是典型的非面向对象的开发语言,但是它的确是支持类,支持类并不能说明就是支持面向对象,能够解决多态问题的
2015-07-17 09:25:45 576
转载 C#调用C/C++动态库 封送结构体,结构体数组
因为公司一直都是做C++开发的,因客户需要要提供C#版本接口,研究了一下C#,发现其强大简洁, 在跨语言调用方面封装的很彻底,提供了强大的API与之交互.这点比JNA方便多了. Java与C#都只能调用C格式导出动态库,因为C数据类型比较单一,容易映射. 两者都是在本地端提供一套与之映射的C#/java描述接口,通过底层处理这种映射关系达到调用的目的. 一. 结构体的传递
2015-07-07 09:16:31 584
C#描述中的单例与多例模式
2012-08-15
C#异步回调算法
2012-08-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人