C++辅导:制作透明窗体,第1张

C++辅导:制作透明窗体,第2张

1.重载CreateParams函数并设置透明样式
2。然后重载它的WM_ERASEBKGND消息。
代码片段:

。h File
class TYourForm:public t form
{
private:
void _ _ fastcall WMNC(t Message & Message);
public:
_ _ fast call TYourForm(t component * Owner);
BEGIN _ MESSAGE _ MAP
VCL _消息_处理程序(WM_ERASEBKGND,TMessage,WMNC);
END _ MESSAGE _ MAP(t form);
protected:
virtual void _ _ fastcall create Params(TCreateParams & Params);
}


。cpp文件

void _ _ fast call TYourForm::create Params(TCreateParams & Params)
{
t form::create Params(Params);
Params。EX _ STYLE | = WS _ EX _ TRANSPARENT
}
void _ _ fastcall TYourForm::WMNC(t Message & Message)
{
SetBkMode(GetWindowDC(this-> Handle),OPAQUE);
ReleaseDC(this->Handle,GetWindowDC(this-> Handle));
消息。结果= 1;
}

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » C++辅导:制作透明窗体

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情