您的位置:首页 > 编程语言 > C语言/C++

C++技巧之三

2004-02-17 18:47 225 查看

代码清单1window_update_scope的节略本

/*/////////////////////////////////////////////////////////////
*
*...
*
*Extractfromwinstl_window_update_scope.h
*摘录自winstl_window_update_scope.h
*
*www:
'target='_blank'>http://www.synesis.com.au/winstl
*
'target='_blank'>http://www.winstl.org/
*
*Copyright(C)2002,SynesisSoftwarePtyLtd.
*版权所有(C)2002,SynesisSoftwarePtyLtd.公司
*(LicensedundertheSynesisSoftwareStandardSourceLicense:
*http://www.synesis.com.au/licenses/ssssl.html)
*(由SynesisSoftwareStandardSourceLicense授权许可:
*http://www.synesis.com.au/licenses/ssssl.html)
*
*...
*
*//////////////////////////////////////////////////////////*/
...
namespacewinstl
{
classwindow_update_scope
{
//Construction
//构造
public:
//TakesaHWNDandchangesit'scurrentupdate-status,)
//whichissetbacktotheoriginalstateinthe
//destructor.
//取得HWND句柄并改变其当前更新状态,在析构器中设置其回到初始状态。
ws_explicit_kwindow_update_scope(HWNDhwnd)
:m_bIsLocked(hwnd!=NULL&&::LockWindowUpdate(hwnd))
{}
~window_update_scope()winstl_throw_0()
{
if(m_bIsLocked)
{
//Lockwassuccessful,soundohere
//锁定成功,因此此处反向操作
::LockWindowUpdate(NULL);
}
}
//Members
//成员变量
protected:
ws_bool_tm_bIsLocked;
//Nottobeimplemented
//不被实现
private:
window_update_scope(window_update_scopeconst&rhs);
window_update_scopeconst
&operator=(window_update_scopeconst&rhs);
};
}//namespacewinstl
//名称空间winstl
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: