2012-08-21 06:01
⁄ 工业·编程
⁄ 共 484字
实现CSliderCtrl的子类CXXCtrl
响应左键按下消息
ON_WM_LBUTTONDOWN()
void CXXCtrl::OnLButtonDown(UINT nFlags, CPoint point) {
// 按键在滑动块区域内,不做操作 CRect tRect; GetThumbRect(&tRect); if (tRect.PtInRect(point)) { CSliderCtrl::OnLButt...
代码集锦阅读全文
2012-08-21 05:59
⁄ 工业·编程
⁄ 共 400字
背景:需要从字符串中取出所有整数,暂不考虑负数。
CString strText = _T("1/2/17/18"); vector<CString>& vNumList; const char* pText = strText.GetBuffer(strText.GetLength()); CString strTemp = _T(""); while (*pText != '\0') { if (*pText >='0' && *pText <= '9') { ...
代码集锦阅读全文
2012-08-21 05:56
⁄ 工业·编程
⁄ 共 285字
CString strDesc = _T("CRect动态确定");
CRect textRect;
textRect.left = 10;
textRect.top = 10;
//设置textRect.right,并获取字符串高度
int nHeight = pDC->DrawText(strDesc,textRect,DT_SINGLELINE|DT_CALCRECT);
textRect.bottom = textRect.top + nHeight;
//实际输出字符串
pDC->DrawText(strDesc,textRect, DT_SINGLELINE|DT_VCENTER|DT_LEFT);
代码集锦阅读全文
2012-08-21 05:55
⁄ 工业·编程
⁄ 共 1774字
最近有一个小需求:
根据当前日期,求出一周前日期,三个月前日期,一年前日期。
实现如下:
1 调用示例:
//开始时间 COleDateTime startDate; //结束时间 COleDateTime endDate = COleDateTime::GetCurrentTime();
//最近一周
startDate = CTimeChange::PreDate(endDate, 7, DAY_TYPE);
&...
代码集锦阅读全文
2012-08-21 05:54
⁄ 工业·编程
⁄ 共 182字
采用WaitForSingleObject来实现。
HANDLE hTaskProc = CreateThread(NULL, 0, UploadTaskProc, (void *)this, 0, NULL);
if (hTaskProc != NULL) { WaitForSingleObject(hTaskProc, 5000); CloseHandle(hTaskProc);
}
VC阅读全文
2012-08-21 05:53
⁄ 工业·编程
⁄ 共 1812字
说明:《Head First设计模式》第七章Adapter模式C++实现,用火鸡来模仿鸭子。
鸭子类Duck.h:
#pragma once #include <iostream> using namespace std;
//鸭子 class IDuck { public: virtual ~IDuck(){}
//呱呱叫 virtual void Quack() = 0; //飞行 virtual void Fly() = 0; };
//绿头鸭 ...
设计模式阅读全文
2012-08-21 05:52
⁄ 工业·编程
⁄ 共 1950字
说明:将《Head First 设计模式》装饰者模式,用C++实现。
咖啡及调料类Behaverage.h:
#pragma once #include <iostream> using namespace std;
//咖啡类 class IBehaverage { public: virtual ~IBehaverage(){}
virtual CString GetDescription() { return m_strDesc; ...
设计模式阅读全文
2012-08-21 05:51
⁄ 工业·编程
⁄ 共 2462字
说明:将《Head First设计模式》中策略模式,用C++来实现。
飞翔行为FlyBehavior.h:
#pragma once #include <iostream> using namespace std;
class IFlyBehavior { public: virtual ~IFlyBehavior(){}
virtual void Fly() = 0; };
class CFlyWithWings : public IFlyBehavior { public: void Fly() { ...
设计模式阅读全文
2012-08-21 05:51
⁄ 工业·编程
⁄ 共 1256字
原型模型,画图软件,拖拽图形的例子做比很贴切。
图形类Graph.h:
#pragma once #include <iostream> using namespace std;
class CGraph { public: CGraph() : m_strColor(_T("Red")) {
}
virtual ~CGraph(){}
virtual CGraph* Clone() = 0...
设计模式阅读全文
2012-08-21 05:48
⁄ 工业·编程
⁄ 共 251字
vs2005引用lib文件有两种方式。
其一:通过#param comment(lib, 'PublicFunc.lib')方式引用。
其二:通过设置工程属性,Configuration Properties->Linker->Input->Additional Dependencies中设置PublicFunc.lib,如图1。
在实际工作中,方式一有所不便。因为用工具编译所有工程文件时,需解析模块间的依赖关系,从而决定编译模块的顺序。
方式一会因PublicFunc模块后编译导致该编译不通过,推荐使用方式二。
lib, 软件开发阅读全文