【自绘滑块类问题????】

大树学长 2015-01-07 01:46:10
在自绘滑块类中
我想把推子与背景用位图替换,不知道用那些函数?
还有能改变推子的形状么
这个类和按钮类有什么不同啊?

不知道怎么传不了图片,这个是百度图片的地址。想要的效果
http://image.baidu.com/i?ct=503316480&z=0&tn=baiduimagedetail&ipn=d&word=%E6%BB%91%E5%9D%97%E6%8E%A7%E4%BB%B6&step_word=&pn=19&spn=0&di=5703297270&pi=&rn=1&is=&istype=&ie=utf-8&oe=utf-8&in=6500&cl=2&lm=-1&st=&cs=1225543959%2C615528034&os=1839241957%2C643858825&adpicid=0&ln=1957&fr=&fmq=1420609300930_R&ic=&s=&se=&sme=0&tab=&width=&height=&face=&ist=&jit=&cg=&objurl=http%3A%2F%2Fimages.cnblogs.com%2Fcnblogs_com%2FC1SupportTeam%2F201211%2F201211062037576063.jpg&fromurl=ippr_z2C%24qAzdH3FAzdH3Fooo_z%26e3Bp7tv55s_z%26e3Bv54AzdH3Fw6ptvsjfAzdH3F4d7qIz
...全文
138 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
大树学长 2015-01-08
  • 打赏
  • 举报
回复
在自绘滑块类中把推子与背景用位图替换,要用那些函数?
gz_qmc 2015-01-08
  • 打赏
  • 举报
回复
看的懂提纲描述的一了百了 看不懂就说明你还没到会的火侯 还有很多参数可以表现更丰富多彩 你会了上面描述的就都会了 啥按钮,列表,树控,标签等等等 都鸡巴一回事情 自绘也就那么回事情
gz_qmc 2015-01-08
  • 打赏
  • 举报
回复
void myBa::OnPaint() { 把左箭头图片La画在rLa区域 ............................... if(鼠标在rLa区域) 把左箭头高亮图片LaH画在rLa区域 if(鼠标在rLa区域) 把左箭头图片La画在rLa区域 } void myBa::OnMouseMove(UNIT flag,CPoint point) { if(point 在rLa区域) 设置区域变量isLeft为TRUE; else 设置区域变量isLeft为FALSE; if(point 在rRa区域) 设置区域变量isRight为TRUE; else 设置区域变量isRight为FALSE; Invalidate(); //刷新重绘 } void myBa::OnMouseLButtonDown(UNIT flag,CPoint point) { if(point 在rLa区域) 滑块表示的数据--; 挪动滑块区域rblock的位置 if(point 在rRa区域) 滑块表示的数据++;挪动滑块区域rblock的位置; if(point 在rRa区域) 根据point的数和窗口的坐标计算滑块表示的数据;挪动滑块区域rblock的位置; PostMessage(GetParen()->....); 向父亲窗口或关联窗口发送消息告诉改变后的数据值 Invalidate(); //刷新重绘 }
gz_qmc 2015-01-08
  • 打赏
  • 举报
回复
引用 6 楼 bigtree_mfc 的回复:
[quote=引用 4 楼 lsq19871207 的回复:] 滑块=滚动条?
滚动条是滚动条是窗口用的, 滑块就是那个推子加轨道的,不算窗口使用的[/quote] 其实是一回事情, 你关联窗口就可以当滚动条,何必非要分出区别呢? class myBar:CWnd { CBitmap La;//左箭头 CBitmap LaH;//左箭头高亮 CBitmap Ra;//右箭头; CBitmap RaH;//右箭头高亮 CBitmap real;//轨道 CBitmap block;//滑块 CBitmap back;//背景 CRect rLa;//左箭头区域 CRect rRa;//左箭头区域 CRect rreal;//左箭头区域 CRect rblock;//左箭头区域 CRect rback;//左箭头区域 void Loadpic(CString laFilename,CString raFilename......);//把文件变成CBitmap void SetTectLa(int x1,int y1,int x2,int y2);//设置各部件位置 }
大树学长 2015-01-08
  • 打赏
  • 举报
回复
引用 4 楼 lsq19871207 的回复:
滑块=滚动条?
滚动条是滚动条是窗口用的, 滑块就是那个推子加轨道的,不算窗口使用的
信阳毛尖 2015-01-08
  • 打赏
  • 举报
回复
背景贴图用BitBlt/StretchBlt/TransparentBlt等拷贝dc函数啊: 根据hdcSrc先创建一个兼容dc; ::SelectObject(dc,hBitmap) BitBlt(hdcSrc,....,dc...);
信阳毛尖 2015-01-08
  • 打赏
  • 举报
回复
滑块=滚动条?
赵4老师 2015-01-07
  • 打赏
  • 举报
回复
参考Codejock.Xtreme.Suite.Pro.ActiveX源代码? 参考ActiveSkin源代码?(这个好象不是开源的)

16,489

社区成员

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

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

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