当前位置: 首页 > news >正文

福建微网站建设公司外贸网站平台

福建微网站建设公司,外贸网站平台,永久链接生成器,wordpress写书主题在编程中,经常要用到按钮控件,大部分情况下,文字按钮就OK了,但有时为了更好的效果,需要用到图形按钮。 在MFC中,应用CBitmapButton就可以实现图形按钮。CBitmapButton类继承自CButton类。你可以为图形按钮指…

在编程中,经常要用到按钮控件,大部分情况下,文字按钮就OK了,但有时为了更好的效果,需要用到图形按钮。

在MFC中,应用CBitmapButton就可以实现图形按钮。CBitmapButton类继承自CButton类。你可以为图形按钮指定四张图片,分别对应按钮的四种不同状态:

正常显示(Up),鼠标按下(Down),获得焦点(Focused),不可用(Disabled)。

正常显示(Up)状态的图片是必须的,其他三张图片是可选的。

还有,按钮的Style必须指定为BS_OWNERDRAW.。

以下是利用CBitmapButton实现图形按钮的实例:

第一种方法:

(一)在VC6下新建一对话框工程,在对话框界面上拉出一按钮控件

指定按钮的Style为Owner Draw,即程式中得BS_OWNERDRAW样式。

利用ClassWizard为按钮关联CButton类变量,然后将CButton类型手动改为CBitmapButton。

(二)导入指定按钮四种状态的图片

以下只导入了3张图片,分别对应Up,Down,Focused

(三)在对话框的OnInitDialog函数中添加如下代码

LoadBitmaps加载状态图片,注意顺序为Up,Down,Focused,Disabled。

1 // TODO: Add extra initialization here  
2 m_btnBitmap.LoadBitmaps(IDB_UP, IDB_DOWN, IDB_FOCUSED); //Disabled状态的图片没有制作
3 m_btnBitmap.SizeToContent(); //调整按钮大小为图片大小

第二种方法:利用SubclassDlgItem

在界面中拉出一按钮控件后,不用关联变量,指定按钮的Style为Owner Draw,然后同上一样导入四张状态图片。创建CBitmapButton对象(注意不要创建函数的局部变量,否则在函数执行完毕时就销毁了),最好创建为对话框的成员变量,在对话框的OnInitDialog初始化函数中用LoadBitmaps加载图片,再利用SubclassDlgItem方法将该CBitmapButton与刚开始在界面上拉出的控件关联。按钮控件自动调整为和图片一样大小。

代码如下:

1 m_btnBitmap002.LoadBitmaps(IDB_UP, IDB_DOWN, IDB_FOCUSED);  
2 m_btnBitmap002.SubclassDlgItem(IDC_BTN_TESTAUTO, this);
3 //CBitmapButton test; //不可这样定义局部变量再关联
4 //test.LoadBitmaps(IDB_UP, IDB_DOWN, IDB_FOCUSED);
5 //test.SubclassDlgItem(IDC_BTN_TESTAUTO, this);

第三种方法:应用CBitmapButton的AutoLoad方法自动为按钮加载图片

BOOL AutoLoad(UINT nID, CWnd* pParent);

我们不用指定图片的ID,那么程序是采取怎样的规则去加载图片的呢?

规则:如果按钮控件的Caption为Test,则四张位图的ID应分别为“TestU”,“TestD”,“TestF”,“TestX”,分别对应Up,Down,Focused,Disabled状态。注意:""也是ID的一部分。

所以步骤为:
(一)在对话框中拉出按钮控件,Caption改为Test,指定按钮的Style为Owner Draw。

(二)定义对话框的成员变量CBitmapButton   m_btnBitmap003;

(三)导入四张状态位图,ID分别改为“TestU”,“TestD”,“TestF”,“TestX”。

(四)在对话框的OnInitDialog中调用AutoLoad方法

1 m_btnBitmap003.AutoLoad(IDC_BTNTEST, this);  

这种方法按钮也会自动调整为和位图一样大小。





转载于:https://www.cnblogs.com/Hisin/archive/2012/02/27/2370636.html

http://www.lbrq.cn/news/2356795.html

相关文章:

  • 男女之间做那个事情很污的网站友情链接交换平台有哪些
  • 东营造价信息网官网seo优化的主要内容
  • 做网上任务赚钱的网站长沙网站优化seo
  • wordpress将首页转成html代码win11优化大师
  • 怎么用joomla做网站品牌推广方式都有哪些
  • 移动通信网站建设网站建设企业咨询
  • 产品免费推广平台有哪些seo网站优化是什么
  • 买软件网站建设百度客服电话24小时人工服务热线
  • 翻页大图网站免费友链平台
  • 7个湖北seo网站推广策略大连企业网站建站模板
  • ps做图赚钱网站有哪些如何推广外贸型网站
  • 网络管理系统平台有哪些福州seo网址优化公司
  • 杭州市建设工程招标app关键词排名优化
  • 做装修效果图的网站有哪些软件下载互联网广告优化
  • 服装 产品展示网站模板网络广告人社区
  • 网站建设技术公司今日头条网站推广
  • 郑州腾石建站东莞疫情最新情况
  • 做网站需要哪些资料做电商需要学哪些基础
  • 梅州正规的免费建站网站如何seo推广
  • 泰州网站制作人工智能培训课程
  • 连云港北京网站建设网站seo关键词优化排名
  • html项目模板下载宁波优化网站排名软件
  • 汽车网站模版360站长工具seo
  • 郑州网站制作公免费域名申请网站
  • 手机做logo用什么网站今日新闻最新
  • 商城网站建设排名企业推广视频
  • 专业网站建设的价格360收录提交入口
  • 安陆市城乡建设局网站100条经典广告语
  • 小程序开发平台花多少钱宁波seo网站排名优化公司
  • 广州做网站最好的公司深圳百度推广联系方式
  • Git问题排查与故障解决详解
  • Python中的列表list、元组(笔记)
  • Mybatis07-逆向工程
  • OCR 与 AI 图像识别:协同共生的智能双引擎
  • 测试tcpdump,分析tcp协议
  • Django+Celery 进阶:动态定时任务的添加、修改与智能调度实战