如何用VC做不规则形状窗体

wzwz 2001-07-20 10:28:37
...全文
146 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
dsli 2001-07-21
  • 打赏
  • 举报
回复
实现起来比较麻烦
推荐www.vchelp.net
会思考的草 2001-07-21
  • 打赏
  • 举报
回复
用掩模技术。我有完整工程代码?who想要?说一声,我一起寄给你们。
HookSmile 2001-07-21
  • 打赏
  • 举报
回复
先得到一个CRgn对象,可以用它自定义形状,
然后在ONINITDIALOG()中调用SetWindowRgn(CRgn&)就可以了
seekinrain15 2001-07-20
  • 打赏
  • 举报
回复
用位图作为框架建立不规则窗体, 核心代码:
看不懂别问我~~~

for(;;){
iX=0;
iStartX=-1;
for(;;){
tmprgb=GetPixel(hBmpDC,iX,iY);
if(iStartX==-1){
if(tmprgb != rcBack)
iStartX=iX;
}else if(tmprgb == rcBack){
hTmprgn=CreateRectRgn(iStartX,iY ,iX ,iY+1);
CombineRgn(hRgn,hRgn,hTmprgn,RGN_OR);
iStartX=-1;
}else{
if(iX==bmBmp.bmWidth){
iX++;
iY++;
hTmprgn=CreateRectRgn(iStartX ,iY ,iX ,iY);
CombineRgn(hRgn,hRgn,hTmprgn,RGN_OR);
iStartX=-1;
}
}
iX++;
if(iX>bmBmp.bmWidth)
break;
}
iY++;
if(iY>bmBmp.bmHeight)
break;
}
Matrix_w 2001-07-20
  • 打赏
  • 举报
回复
用API函数创
选创区域。再创窗体
老海小舟 2001-07-20
  • 打赏
  • 举报
回复
用CRgn 类 很简单
azurecrystal 2001-07-20
  • 打赏
  • 举报
回复
网上有的,去VC知识库看看
wjyasd 2001-07-20
  • 打赏
  • 举报
回复
http://www.csdn.net/expert/Topic/175/175468.shtm
http://www.csdn.net/expert/Topic/10/10838.shtm
http://www.csdn.net/expert/Topic/31/31092.shtm
wjyasd 2001-07-20
  • 打赏
  • 举报
回复
设置数组,保存一定的坐标!
利用坐标创建窗口!

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧