- 博客(36)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
转载 2021-02-20
winform控件加载与更新有先后闪烁、延迟的解决办法1、加载protected override CreateParams CreateParams{ get { CreateParams cp = base.CreateParams; cp.ExStyle |= 0x02000000; return cp; }}2、更新protected override void WndProc(ref Message m
2021-02-20 17:21:43
114
转载 设计模式
设计模式1、工厂模式在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。工厂模式作为一种创建模式,一般在创建复杂对象时,考虑使用;在创建简单对象时,建议直接new完成一个实例对象的创建。1.1、简单工厂模式主要特点是需要在工厂类中做判断,从而创造相应的产品,当增加新产品时,需要修改工厂类。使用简单工厂模式,我们只需要知道具体的产品型号就可以创建一个产品。缺点:工厂类集中了所有产品类的创建逻辑,如果产品量较大,会使得工厂类变的非常臃肿。
2020-08-20 16:05:09
177
转载 WPF的DataGrid的某个列绑定数据的三种方法(Binding、Converter、DataTrigger)
WPF的DataGrid的某个列绑定数据的三种方法(Binding、Converter、DataTrigger)最近在使用WPF的时候,遇到某个列的值需要根据内容不同进行转换显示的需求。尝试了一下,大概有三种方式可以实现:1、传统的Binding方法,后台构造好数据,绑定就行。2、转换器方法(Converter),绑定后,触发转换器,转换器负责把值转换成需要的内容。3、Da...
2019-11-28 23:07:09
1058
转载 慎用USES_CONVERSION
USES_CONVERSION是ATL中的一个宏定义。用于编码转换(用的比较多的是CString向LPCWSTR转换)。在ATL下使用要包含头文件#include "atlconv.h"使用USES_CONVERSION一定要小心,它们从堆栈上分配内存,直到调用它的函数返回,该内存不会被释放。如果在一个循环中,这个宏被反复调用几万次,将不可避免的产生stackoverflow。//使用AT...
2019-10-14 09:27:21
160
转载 VC下加载JPG/GIF/PNG图片的两种方法
仅管VC有提供相应的API和类来操作bmp位图、图标和(增强)元文件,但却不支持jpg、gif和png等格式的图片,而这几种格式却是常常要用到的。这里我给大家介绍两种办法来操作这些格式的图片。1.用API OleLoadPicture来加载JPG、GIF格式的图片(注:不支持PNG格式,另外GIF只能加载第一帧,且不支持透明)OleLoadPicture函数实际上创建了一个IPictu...
2019-03-27 16:13:37
418
原创 C++中指针数组的分配与释放
C++中指针数组的分配与释放C++中可用new和delete关键字分配和释放内存,但是如果遇到指针数组(或指向指针的指针),分配和释放必须慎重,不然容易造成内存泄漏。下面用一段代码给出如何使用指向指针的指针来分配和释放内存: 1 2 3 4 5 6 7 8 9 10 11 12 13...
2019-03-09 14:11:56
6544
转载 C++ 播放声音
一、播放系统的消息声音 BOOL WINAPI MessageBeep( __in UINT uType); MSDN 中对这个函数的说明是:播放一个波形文件(也就是wav格式),每一个声音类型的波形声音在注册表中有一个条目(entry)指定. MessageBeep(MB_OK); Sleep(3000); MessageBeep(MB...
2019-01-21 11:30:39
5501
原创 char*转LPCWSTR Unicode编码
在Windows编程中,经常会碰到字符串之间的转换,char*转LPCWSTR也是其中一个比较常见的转换。下面就列出几种比较常用的转换方法。1、通过MultiByteToWideChar函数转换 MultiByteToWideChar函数是将多字节转换为宽字节的一个API函数,它的原型如下:int MultiByteToWideChar( UINT CodePage, ...
2018-12-14 17:21:48
856
转载 wchar_t 转换 string & std::string 转换 wchar_t
开发语言:C++#include <iostream>#include <windows.h>#include <string>// wchar_t to stringvoid Wchar_tToString(std::string& szDst, wchar_t *wchar){wchar_t * wText = wchar;DWO...
2018-12-13 16:23:23
2441
转载 C++字符串与十六进制转换
/****************************************************************************函数名称: str_to_hex函数功能: 字符串转换为十六进制输入参数: string 字符串 cbuf 十六进制 len 字符串的长度。输出参数: 无*****************************************...
2018-12-12 16:28:17
16991
转载 CString和string在unicode与非unicode下的相互转换
CString和string在unicode与非unicode下的相互转换最近想写一个手机控制电脑的玩具,涉及到了socket通信,数据采用json通用格式,首先是jsoncpp的编译问题太烦了,然后还有更烦的,java中的String多容易的玩意儿,然后到了c/c++/mfc中超级烦,搜索了很久的攻略,用了大把的时间,最后写了个这玩意儿出来,或许可以帮助到一些需要此的道友们哈 st...
2018-12-06 21:20:57
134
转载 C++获取指定文件夹下的所有文件名(或路径)
#include <io.h>#include <fstream>#include <string>#include <vector>#include <iostream>using namespace std;//获取所有的文件名void GetAllFiles( string path, vector<stri...
2018-11-13 11:03:37
1891
转载 .Net(c#)汉字和Unicode编码互相转换
{"Tilte": "\u535a\u5ba2\u56ed", "Href": "http://www.cnblogs.com"}经常遇到这样内容的json字符串,原来是把其中的汉字做了Unicode编码转换。Unicode编码: 将汉字进行UNICODE编码,如:“王”编码后就成了“\王”,UNICODE字符以\u开始,后面有4个数字或者字母,所有字符都是16进制的数字,每两位表...
2018-09-15 19:11:12
8060
1
转载 C# 时间格式互转
C# string to DateTime yyyy-MM-dd HH:mm:ss 毫秒输出string dateTimeString = "2008-09-12 15:14:56.135";DateTime time = DateTime.ParseExact(dateTimeString, "yyyy-MM-dd HH:mm:ss.fff", null);MessageBox.S...
2018-09-12 10:21:41
292
原创 C# 将图片转换成base64 数据
//将图片转换成base64 数据 FileStream fs = File.OpenRead("C:\\20180822\\161940.jpg"); //OpenRead int filelength = 0; filelength = (int)fs.Length; //获得文件长度 Byte...
2018-08-23 21:55:25
4035
原创 C# 自定义Http客户端通信POST URL
//自定义Http客户端通信POST URL private static readonly string DefaultUserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"; private sta...
2018-08-23 21:46:37
764
原创 C# 图片位深度转至8位灰度图像,8位灰度图像转为1位灰度图像
#region 二值化 #region Otsu阈值法二值化模块 /// <summary> /// Otsu阈值 /// </summary> /// <param name="b">位图流</param> ...
2018-08-23 21:36:04
3615
转载 c# 生成二维码图片
首先,将 ThoughtWorks.QRCode.dll 放在 bin 目录后,在页面中引用:using ThoughtWorks.QRCode.Codec;thoughtworks.qrcode.dll 下载地址:http://download.csdn.net/detail/u012543266/97701351.在C#中直接引用ThoughtWorks.QRCode.dll ...
2018-08-23 12:57:27
714
转载 深入linux网络编程(三):异步阻塞IO —— epoll
作者:yurunsun@gmail.com 新浪微博@孙雨润 新浪博客 CSDN博客日期:2012年11月17日1. epoll的优越性上一节介绍的select有几个缺点:存在最多监听的描述符上限FD_SETSIZE每次被唤醒时必须遍历才能知道是哪个描述符上状态ready,CPU随描述符数量线性增长描述符集需要从内核copy到用户态这几个缺点反过来正是epoll的优点,或者说epoll就是为了解决...
2018-07-10 11:30:11
220
转载 网络七层协议 五层模型 TCP连接 HTTP连接 socket套接字
socket(套接字)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。多个TCP连接或多个应用程序进程可能需要通过同一个TCP协议端口传输数据。为了区别不同的应用程序进程和连接,计算机操作系统为应用程序与TCP/IP协议交互提供了套接字(Socket)接口。...
2018-07-09 22:49:01
258
转载 TCP协议的三次握手和四次挥手以及断开时各阶段的状态分析
https协议是在http协议之上封装了SSL协议,为了完成客户端和服务端的双向认证和可靠传输,需要在通信之前双方进行多次的握手协商。TCP协议与https协议类似。1.TCP的连接(俗称三次握手)在TCP协议数据报文的头部(TCP Header)结构中有32位序号(Sequence number) 和32位确认序号(Acknowledge number):SYN,ACK。 第一次握手 Clie...
2018-07-09 22:45:38
161
转载 C\C++语言中的计时函数
1. <time.h>中函数clock(),返回类型clock_t,精确度,毫秒级别[cpp] view plain copy print?<span style="font-size:18px;">#include <stdio.h> #include <time.h> #include <math.h> void te...
2018-06-21 16:19:28
493
转载 E-R图与三范式
E-R图E-R是“实体-联系”的简称。它是描述现实世界概念结构模型的有效方法。是表示概念模型的一种方式用矩形表示实体型,矩形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;用菱形表示实体型之间的联系,在菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)实体A对实体B为1对1,则在表A或表B中创建一个字段,存储另...
2018-03-27 15:55:06
1417
转载 C/C++日期时间使用方法,struct tm, time_t, clock_t,计算循环所用时间
关键字:UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元)1.概念在C/C++中,对字符串的操作有很多值得注意的问题,同样,C/C++对时间的操作也有许多值得大家注意的地方。下面主要介绍在C/C++中时间和日期的使用方法.通过学习许多C/C++库,你可以有很多操作、使用时间的方法。但在这之前
2017-01-21 11:52:30
696
转载 C语言字符串转换成日期
[cpp] view plain copy/***************************************************************************** * 版权所有(C) 2006, ZTE Corp. WiMAX *---------------------------------------------
2017-01-20 09:56:35
4520
转载 RegQueryValueEx函数返回234错误解决方法
我们在调用RegQueryValueEx这个函数,在注册表中读取字符串形式的数据时候,经常会出现返回234错误。MSDN说是 If the buffer specified by lpData parameter is not large enough to hold the data, the function returns the value ERROR_MORE_DATA,Wind
2016-11-29 16:28:50
1397
原创 GetCurrentTime(),GetLocalTime(),GetSystemTime()之间的区别
MFC下,常用的获取时间方式有以下几种三种:GetSystemTime,GetLocalTime,GetCurrentTime。SYSTEMTIME sysTm, locTm; GetSystemTime(&sysTm); //获取格林威治标准时间,与北京时间相差8小时 GetLocalTime(&locTm);
2016-11-29 14:05:34
1451
转载 __cdecl __fastcall与 __stdcall
Visual C++ Compiler Options可以指定的Calling Convention有 3种: /Gd /Gr /Gz 这三个参数决定了: 1.函数参数以何种顺序入栈,右到左还是左到右。 2.在函数运行完后,是调用函数还是被调用函数清理入栈的参数。 3.在编译时函数名字是如何转换的。 下面我们分别详细介绍: 1./Gd 这是编译器
2016-11-24 18:26:14
223
转载 多线程 AfxBeginThread 与 CreateThread 的区别
AfxBeginThread 与 CreateThread 的区别简言之: AfxBeginThread是MFC的全局函数,是对CreateThread的封装。 CreateThread是Win32 API函数,前者最终要调到后者。1>.具体说来,CreateThread这个 函数是windows提供给用户的 API函数,是SDK的标准形式,在使用的
2016-11-11 14:35:45
173
转载 AfxBeginThread的介绍/基本用法
AfxBeginThread 用户界面线程和工作者线程都是由AfxBeginThread创建的。现在,考察该函数:MFC提供了两个重载版的AfxBeginThread,一个用于用户界面线程,另一个用于工作者线程,分别有如下的原型和过程:用户界面线程的AfxBeginThread 用户界面线程的AfxBeginThread的原型如下:CWinThread* AFXAPI A
2016-11-11 14:29:02
159
转载 在windows 、linux下读取目录下所有文件名
Windows要引入的头文件是主要是两个函数FindFirstFile、FindNextFileMSDN里是这么说的:FindFirstFile functionSearches a directory for a file or subdirectory with a name that matches a specific name (or partial na
2016-11-01 09:08:55
466
转载 深解WOSA/XFS中的内存分配函数
微软制定WOSA/XFS规范,并不是一件简单的事情。如果对Windows操作系统本身理解的足够深入的话,会理解WOSA架构里面的很多内容,远不是想象的那么简单。首先我们要清楚WOSA架构并不是只存在于XFS规范中,微软还有很多地方在使用WOSA架构,比较常见的如WinSock套接字、ODBC数据库等。所有的这些都用到同样的软件架构,差别的只是具体的扩展有些许不同而已。 我们的话题
2016-10-31 10:17:58
986
原创 程序员的十层楼
小弟之前看过一篇关于程序员未来发展的文章,虽说文章后面有点扯了,但文章的开头部分确实是根据实际来写的,根据文章的分层,小弟目前还是菜鸟级别的。。。现分享出来,时刻勉励自己,在自己迷茫的时候看看,激励自己能够不停的努力。哈哈,要求不高,这一辈子只希望能够达到大牛级的人物就好,大家一起共勉。第1层 菜鸟 第1层楼属于地板层,迈进这层楼的门槛是很低的。基本上懂计算机的基本操作,了解计
2016-10-25 11:38:08
347
转载 MFC OCX 控件事件的添加和处理
1、控件的事件一般都是由对外的接口引发到,这里定一个接口先:该接口有一个字符串参数,表示调用者将传入一个字符串,传进来后,我们将取得字符串的长度。2、添加事件:事件应该是属于窗口的,所以在Ctrl类上单击右键-》添加:3、添加一个事件“hello”:该事件的参数是刚才那个字符串处理的结果,这里是long型。4、在接口实
2016-10-24 18:17:19
1074
空空如也
关于dll中的对话框播放flash的问题
2017-05-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人