VC++如何实现程序的非矩形启动画面? 像PHOTOSHOP CS4和 VS2010这种任意形状的启动画面怎么实现 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先可以定义一个HRGN,生成你想要的任何形状,然后调用SetWindowRng设置窗口形状 CRgn类SetWindowRgn(HRGN, TRUE;) 楼上正解,用CRgn实现所需的区域(形状), 再在OnInitDialog中调用SetWindowRgn(HRGN, TRUE)即可 用gdi函数得到图形轮廓,转换成CRGN,再调用setwindowrgn SetLayeredWindowAttributes可以使对话框部分透明,但如何是对话框上面的图片不透明 设置窗口风格WS_EX_LAYERED UpdateLayeredWindow 中设置 BLENDFUNCTION 建立放置图片的对话框im,然后调用下面两句,SetWindowLong(im->GetSafeHwnd() , GWL_EXSTYLE, GetWindowLong(im->GetSafeHwnd(), GWL_EXSTYLE)^0x80000);im->SetLayeredWindowAttributes(RGB(255,255,255),0,1);使图片中的白色为透明,就可以显示任意的非矩形启动画面了,这两句最好放在OnInitDialog() WndProc函数中switch(msg)里 return 与 break 有什么区别? 【求】vc wsaaysncselect的简单例子 几个小问题,帮忙解答一下 请教一个有关语言安装的问题 怎样将自己的机器设置为ftp服务器 急!关于BeginPath()的使用…… 有关给继承自cformview的视中动态添加各种标准控件的问题? 请教进程间通信问题 请问一个程序崩溃的问题。 真的是DNS出问题了吗? 请教CListView类的问题,求助高手 高手帮帮忙!!谢谢
SetWindowRgn(HRGN, TRUE;)
用CRgn实现所需的区域(形状), 再在OnInitDialog中调用SetWindowRgn(HRGN, TRUE)即可
但如何是对话框上面的图片不透明
UpdateLayeredWindow 中设置 BLENDFUNCTION
SetWindowLong(im->GetSafeHwnd() , GWL_EXSTYLE, GetWindowLong(im->GetSafeHwnd(), GWL_EXSTYLE)^0x80000);
im->SetLayeredWindowAttributes(RGB(255,255,255),0,1);
使图片中的白色为透明,就可以显示任意的非矩形启动画面了,
这两句最好放在OnInitDialog()