
基础(常用函数)以及需要注意的地方
文章平均质量分 64
Jiao2_vc
我是人才!!
展开
-
关于SelectObject的使用
void CMy10View::OnDraw(CDC* pDC) { pDC->MoveTo (10,10); pDC->LineTo (110,10); CPen newPen(PS_DASHDOTDOT,10,(COLORREF) 192); //红色的笔宽度为10 CPen * pOldPen=pDC->SelectObject (&newPen); //在将新对象选进设备环境原创 2008-05-05 14:58:00 · 993 阅读 · 0 评论 -
vc选择路径(SHBrowseForFolder函数)
一般的OpenDialog,得到的是文件夹名称,如果要想实现下面的效果,得到选择的路径,这个时候SHBrowseForFolder就派上用场了。 下面的例子中返回路径,如果没有选,返回"",选择了路径,则返回选择的路径。 char *GetPath(HWND hWnd,char *pBuffer) { BROWSEINFO bf;转载 2009-08-15 01:03:00 · 4487 阅读 · 0 评论 -
c语言预编译
C中的预处理命令是由ANSIC统一规定的,但它不是C语言的本身组成部分,不能直接对它们进行编译,因为编译程序无法识别它们。必须对程序进行通常的编译(包括词法和语法分析,代码生成,优化等)之前,先对程序中这些特殊的命令进行“预处理”,例如:如果程序中用#include命令包含一个文件“stdio.h”,则在预处理时,将stdio.h文件中的实际内容代替该命令。经过预处理后的程序就像没有使用预处理的转载 2009-08-21 01:24:00 · 1110 阅读 · 0 评论 -
jsp/serverlet redirct
于response是jsp页面中的隐含对象,故在jsp页面中可以用response.sendRedirect()直接实现重定位。注意:(1).使用response.sendRedirect时,前面不能有HTML输出。这并不是绝对的,不能有HTML输出其实是指不能有HTML被送到了浏览器。事实上现在的server都有cache机制,一般在8K(我是说JSP SERVER),这就意味着,除非原创 2010-05-01 17:41:00 · 1117 阅读 · 0 评论 -
学习笔记のsendRedirect &forward
尽管HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法都可以让浏览器获得另外一个URL所指向的资源,但两者的内部运行机制有着很大的区别。下面是HttpServletResponse.sendRedirect方法实现的请求重定向与RequestDispatcher.forward方法实现的请求转发的总结比较:转载 2010-05-02 11:13:00 · 481 阅读 · 0 评论 -
json与eval
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C原创 2010-05-09 09:08:00 · 1234 阅读 · 0 评论 -
RepositionBars的用法和参数的意义
MFC窗口位置管理详细分析及实例在一般用MFC编写的程序的窗口客户区中,可能有好几个子窗口(具有WM_CHILD风格的窗口)。上边是工具栏,中间是视图窗口,下边是状态栏。三个窗口在框架的客户区里和平共处,互不重叠。主框架窗口的尺寸改变了,别的子窗口都能及时调整自己的尺寸以便保持相互位置关系不变,例如状态条窗口总能保持在主框架客户区底部,并且其宽度总能和主框架客户区宽度一致。工具栏窗口总能停靠在主框原创 2010-05-08 21:51:00 · 1207 阅读 · 0 评论 -
div遮盖select的解决方案(简单)
IE6以及一下版本下,选择框Select会覆盖Div中的内容一般情况下,可以将显示的内容放到Iframe中,然后再显示框架内的内容。由于Iframe的可以显示在Select上层,就可以解决这个问题。不过这样做在实现上比较麻烦。有个解决的部分就是在Div内容中加入不显示的Iframe框架即可,不用修改其他内容。加了句这个: 在IE里,层DIV被下拉框SELECT遮盖,这是I转载 2010-05-10 15:17:00 · 1181 阅读 · 0 评论 -
js dtree 树控件用法
dtree动态树+Javascript右键菜单(一) 1、从网上下载dtree控件。(好多地方都有的哦:P) 2、在Jbuilder中新建Web应用,命名为TreeLearing 3、解压缩dtree.rar包。 把dtree目录拷贝至TreeLearing应用中。 dtree目录下包括这些文件:example01.html 、 dtree.js 、 api.html 、 dtree.css 和i原创 2010-05-10 17:21:00 · 1907 阅读 · 0 评论 -
JS取FRAME或父窗口控件的值
标签:杂谈 1子页面取父页面的控件值window.opener.document.getElementById("bgmc");window.parent.document.all.fistmessage.innerText=xxxxxxxxx2在FRAME框架下去某个FRAME页面的值 window.frames[ma原创 2010-05-12 15:48:00 · 2018 阅读 · 0 评论 -
js获取当前日期时间和其他操作
Js获取当前日期时间及其它操作2008-07-28 17:202008-06-11 17:24var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1970-????) myDate.getMonth(); //获取当前月份(0-11,0代原创 2010-05-12 13:53:00 · 1104 阅读 · 0 评论 -
vc控件ListCtrl的使用方法
listctrl的使用方法原创 2010-07-19 23:12:00 · 831 阅读 · 0 评论 -
VC产生(生成)GUID
<br />编号:A3GS_TV20100306001<br /> <br />描述:<br /> <br />本文以例子代码的形式讲述了VC中如何生成全球唯一GUID。<br /> <br />技术实现:<br /> <br />#include<stdio.h><br />#include<objbase.h><br /> <br />char* GuidToString(const GUID &guid);<br /> <br />int main( int argc, char* argv[] )<转载 2010-08-08 10:29:00 · 1089 阅读 · 0 评论 -
Delphi Clientdataset处理关联出来的视图的问题
<br />在Delphi中常常用到ClientDataset来操作视图或者存储过程中关联出来的字段,但是在操作的时候会提示这些字段不能被修改,找了个函数 :<br />procedure TLyffMainFrm.SetDstAllFieldCanEdit(dstNm: TClientDataSet; AddFields: string='');<br /> var tmpDst: TClientDataSet; <br /> I: Integer;原创 2011-03-30 19:08:00 · 1363 阅读 · 0 评论 -
Apache+php在windows下的安装和配置
下载和配置php 下载php:http://windows.php.net/download/ php-5.4.16-Win32-VC9-x86.zip 下载apache: http://httpd.apache.org/download.cgi#apache22一、首先将php5内的所有dll文件(包括ext文件夹内的dll文件)拷贝至Windows系统的sys转载 2016-07-19 11:50:40 · 335 阅读 · 0 评论 -
智能指针的释放
为什么智能指针还需要 Release呢,智能指针不是不需要进行管理引用计数了吗,为什么还需要程序员来release?原因是,智能指针对象在对象销毁时释放所指向的接口,但如果没有在函数退出前,你销毁了com库,那就需要提前来Release它。如: ::CoInitialize( NULL ); //如果在这里初始化,则要注意智能指针的释放 CComQIPtr spFun;转载 2009-08-02 22:31:00 · 4055 阅读 · 1 评论 -
c++抽象类
在面向对象的概念中,我们知道所有的对象都是通过类来描绘的,但是反过来却不是这样。并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类往往用来表征我们在对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象。比如:如果我们进行一个图形编辑软件的开发,就会发现问题领域存在着圆、三角形这样一些具体概原创 2009-04-25 09:34:00 · 7333 阅读 · 3 评论 -
VC快捷键
c6.0快捷键大全2007-01-12 12:33vc6.0快捷键大全- - F1: 帮助 Ctrl+O :Open Ctrl+P :Print Ctrl+N :New Ctrl+Shift+F2 :清除所有书签 F2 :上一个书签 Shift+F2 :上一个书签 Alt+F2 :编辑书签 Ctrl+F2 :添加/删除一个书签 F12 :Goto definition Shift+F12 :G原创 2008-05-05 14:15:00 · 614 阅读 · 0 评论 -
利用timeGetTime函数更精准地计算时间差
我想每 0.005 秒做某一件工作, 所以撰写了以下程序: Dim tm1 As Single Do tm1 = Timer While Timer - tm1 DoEvents Wend ...做某一件工作 Loop 但实际上, 在 While 循环里面, Timer 函数几乎每次都得到相同的时间,只有大约隔了 0.05秒才会得到不同的时间, 也就是说 Timer 的准确性只有 0.05 秒原创 2008-05-06 15:10:00 · 1541 阅读 · 0 评论 -
快速排序算法原理与实现(一)
快速排序是对冒泡排序的一种改进。它的基本思想是:通过一躺排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一不部分的所有数据都要小,然后再按次方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 假设要排序的数组是A[1]……A[N],首先任意选取一个数据(通常选用第一个数据)作为关键数据,然后将所有转载 2008-11-20 18:23:00 · 889 阅读 · 0 评论 -
各种查找和排序的定义及时间复杂度
冒泡排序是稳定的,算法时间复杂度是O(n ^2)。 2.2 选择排序(Selection Sort) 选择排序的基本思想是对待排序的记录序列进行n-1遍的处理,第i遍处理是将L[i..n]中最小者与L[i]交换位置。这样,经过i遍处理之后,前i个记录的位置已经是正确的了。 选择排序是不稳定的,算法复杂度是O(n ^2 )。 2.3 插入排序 (Insertion转载 2008-11-20 18:25:00 · 1036 阅读 · 0 评论 -
运算符
对各种类型的数据进行加工的过程成为运算,表示各种不同运算的符号称为运算符,参与运算的数据称为操作数,按操作数的数目来分:运算符包括:一元运算符、二元运算符、三目运算符、分析运算符(特殊,其实它不是按数目,只是放一起分析)。按基本的运算符功能划分:1 算术运算符: +,―,*,/,%,++,――。2 关系运算符: >,=, 3 布尔逻辑运算符: !,&&,|| 。4 位运算符: >>,>转载 2008-12-04 09:10:00 · 2754 阅读 · 0 评论 -
_STDCALL&_CDECL 调用约定
_stdcall将参数压栈是按C语言的顺序(从右到左),但与C 语言不同的是它是由被调用者将参数从栈中清除的,所以它的编译文件比_cdecl小。_stdcall是Windows API函数中默认的调用约定,VB、VFP等也采用这个约定。 _cdecl是C语言采用的默认调用方法,它的优点是支持printf这样的可变参数调用。 另外,VC++对于两种调用方法的名称转载 2009-02-17 10:32:00 · 676 阅读 · 0 评论 -
模块定义(.def)文件说明
MSDN中的名词解释模块定义 (.def) 文件为链接器提供有关被链接程序的导出、属性及其他方面的信息。生成 DLL 时,.def 文件最有用。由于存在可代替模块定义语句使用的链接器选项,通常不需要 .def 文件。也可以将 __declspec(dllexport) 用作指定导出函数的手段。在链接器阶段可以使用 /DEF(指定模块定义文件)链接器选项调用 .def 文件。如果生成的 .exe 文转载 2008-12-08 20:02:00 · 1439 阅读 · 0 评论 -
句柄
所谓句柄实际上是一个数据,是一个Long (整长型)的数据。 句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。WINDOWS句柄有点象C语言中的文件句柄。 从上面的定义中的我们可以看到,句柄是一个标识符,是拿来标识对象或者项目的,它就象我们的姓名一样,每转载 2008-12-15 10:37:00 · 791 阅读 · 0 评论 -
DDB--DIB
依赖于设备的位图(DDB) DDB(Device-dependent bitmap)依赖于具体设备,这主要体现在以下两个方面:DDB的颜色模式必需与输出设备相一致。例如,如果当前的显示设备是256色模式,那么DDB必然也是256色的,即一个像素用一个字节表示。在256色以下的位图中存储的像素值是系统调色板的索引,其颜色依赖于系统调色板由于DDB高度依赖输出设备,所以D原创 2008-12-17 13:58:00 · 2786 阅读 · 0 评论 -
debug和release的区别
Debug和Release有什么区别?怎么把Debug转成Release ?1。Debug和Release有什么区别,为什么要使用Release版本! 2。怎么把Debug转成Release 转载: Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M)。至于是否需要DLL支持,主要看你采用的编译选项。如果是基于ATL的,则Debug和Release版本对DLL的原创 2009-03-07 23:37:00 · 964 阅读 · 0 评论 -
Window下进程和线程的关系【转】
进程是系统分配资源的单位,每一个进程对应与一个活动的程序,当进程激活时,操作系统就将系统的资源包括内存、I/O和CPU等分配给它,使它执行。 线程是CPU分配时间的单位,每一个线程对应于它在进程中的一个函数,也就是内存中的代码段,多个线程执行时CPU会根据它们的优先级分配时间,使它们完成自己的功能。 一般来说,进程中至少一个线程,一个主线程和其他线程组成一个进程。多个线程的目的在于原创 2009-03-18 09:03:00 · 690 阅读 · 0 评论 -
C++多线程调试和测试的注意事项收藏[转]
在上次的帖子聊了C++多线程的跨平台问题,后来感觉意犹未尽。今天顺便说一下开发C++多线程应用程序时,有关调试和测试的一些注意事项。下面这些注意事项主要是针对C++,不过有些对于其它的语言也适用。 ★关于设置断点和单步执行 很多同学非常依赖于调试器的断点功能和单步功能。这在单线程情况下倒还好(不过有些单线程但涉及GUI的程序,也会有点麻烦)。至于多线程程序的调试,这两种手段简直就是噩梦的开始原创 2009-04-13 08:39:00 · 1130 阅读 · 0 评论 -
深入理解成员函数的重载、隐藏、覆盖
重载的特征: 1、处在相同的空间中,即相同的范围内。 2、函数名相同。 3、参数不同,即参数个数不同,或相同位置的参数类型不同。 4、virtual关键字对是否够成重载无任何影响。 每个类维护一个自己的名字空间,即类域,所以派生类跟基类处于不同的空间之中,因些,虽然派生类自动继承了基类的成员变量及成员函数,但基类的函数跟派生类的函数不可能直接够成函数重载,因为它们处于两个不同的域。转载 2009-04-20 09:41:00 · 1811 阅读 · 0 评论 -
判断QString中是否有汉字
如题,项目中可能遇到此类问题,先写个马马虎虎的解决方法:第一种方法,逐一取中QString的字符,进行判断。 [html] view plaincopyQString str; int nCount = str.count(); for(int i = 0 ; i nCount ; i++) { QChar转载 2016-09-13 15:56:20 · 2695 阅读 · 0 评论