2.上机作业

更新于 2026年10月10日 版权声明
2.上机作业

1)使用MFC中的封装类CBitmapButton,开发类似于QQ或者360杀毒软件的位图按钮,最终效果如图10-52所示。

图示

图10-52 最终效果1

①练习从其他软件截取包括关闭和最小化等按钮的图片。

②截取的位图包括三种状态,即正常状态、选择状态(按下)和跟踪状态(鼠标悬浮在按钮上)。

③将截取好的位图导入到工程中,使用MFC封装类CBitmapButton显示位图按钮。

④至少要实现位图按钮的两个状态,即正常状态和选择状态。

⑤思考如何使用CBitmapButton类实现三态位图按钮(通过特殊处理可以实现)。

2)根据自绘技术,封装功能比MFC更强的位图按钮。

①最多可以支持四态的按钮,即正常状态、选择状态、跟踪状态和禁用状态。

②第三个状态要求是跟踪状态,不是焦点状态(这是与MFC封装的类的不同之处)。

③当鼠标光标进入按钮区域时,显示为手形的光标。

④导入截取的QQ或360的关闭和最小化等按钮的图片,测试效果越像越好。

图示

图示

3)根据自绘技术封装一个链接按钮类(QQ和360等软件内常见这类按钮),如图10-53所示。

①按钮以透明文字为主体,无背景填充色也无边缘凸起或下陷。

②默认是不带下画线的,可以通过接口函数SetUnderline设置为有下画线的。

图示(https://www.daowen.com)

图10-53 最终效果2

③默认文字颜色是蓝色,可以通过接口函数SetColor设置为其他颜色。

④默认跟踪状态的文字颜色可以与正常状态的颜色相同,也可以通过SetColor设置为其他颜色。

⑤当鼠标光标进入按钮区域时,显示为手形的光标。

⑥测试封装好的链接按钮类,分别用红、蓝、绿等不同颜色显示,并且可以带或不带下画线。

图示

注意:以上两题用到的按钮提示文字(工具提示)将在第11章中学习。

4)根据自绘技术开发一个选择线型或宽度的组合控件,最终效果如图10-54所示。

①下拉列表内每个列表项都显示一条线段,线段的粗度随着列表项的索引而递增。

②支持列表项的选择状态,选择状态的列表项是蓝底白线并且有焦点虚线。

图示

图10-54 最终效果3

5)根据自绘技术开发一个选择字体的组合控件,具体样式参照文字编辑器(例如,Word),最终效果如图10-55所示。

①下拉列表内每个列表项显示一个字体的名称,并且每个列表项是与名称对应的字体。

②支持列表项的选择状态,选择状态的列表项是蓝底白字。

③每个列表项都带有图标,中文字体和英文字体的图标不同。

图示

图10-55 最终效果4

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)