VC++图形界面开发与应用.docx
- 文档编号:4865716
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:5
- 大小:22.78KB
VC++图形界面开发与应用.docx
《VC++图形界面开发与应用.docx》由会员分享,可在线阅读,更多相关《VC++图形界面开发与应用.docx(5页珍藏版)》请在冰豆网上搜索。
VC++图形界面开发与应用
VC2004论文题目VC图形界面开发与应用学生姓名指导教师年级2004级专业计算机科学与技术学院计算机科学与信息工程2008年3月1日课题来源:
指导教师与学生自选相结合课题研究的目的和意义:
目前,VC作为一个主流的开发平台一直深受编程爱好者的喜爱,熟练使用VC进行图形界面的开发,是当下图形开发领域的一个比较重要的手段和技能,Windows图形界面就是VC开发的经典展现,通过对经典的分析学习使其熟练使用VC设计极具特色的图形界面。
VC是Windows平台上的C编程环境,学习VC要了解很多Windows平台的特性并且还要掌握MFC、ATL、COM等的知识,难度比较大。
Windows下编程需要了解Windows的消息机制以及回调(callback)函数的原理;MFC是Win32API的包装类,需要理解文档视图类的结构,窗口类的结构,消息流向等等;COM是代码共享的二进制标准,需要掌握其基本原理等等。
使用VC进行图形界面的开发与应用是同样是时下图形界面开发的一种主流开发手段,工控机、模拟器、以及各种支持WindowCE的消费类电子产品的操作界面各种、软件应用产品等都是使用VC开发的,所以VC的应用领域相当广乏,对于希望进行图形界面开发的同学来说,学好和熟练使用VC是设计图形界面的基础,同时强大的VC开发工具也提供了更多更便捷的开发环境,使开发工作更加的丰富化、技巧化、简便化。
国内外同类课题研究现状及发展趋势:
VC图形界面的开发是当今开发的一个热门领域,熟练使用VC设计极具特色的图形界面是立足于开发领域的一样重要的技能和手段。
在当今的图形界面领域国外技术一直处于垄断状态,所以在国内开发市场急需相关的技术类人才,所以发展空间极其广大,努力熟练相关工具以及成熟的事例经验丰富自己的开发技术才是一条发展的捷径,只有设计极具特色的图形界面才能在激烈的图形界面市场具有一定竞争力。
课题研究的主要内容和方法,研究过程中的主要问题和解决办法:
主要内容:
1、绪论2、Windows用户界面制作基础3、按钮控件与编辑控件4、组合框与列表视图控件5、菜单与工具栏6、应用与实例7、总结方法:
理论结合实际,大量阅读相关资料主要问题:
1、VC的编程思想2、图形界面的开发过程解决方法:
1、通过实际操作和查阅相关资料2、在学校机房实验课题研究起止时间和进度安排:
起止时间2008年1月——2008年5月进度安排(指导教师可根据实际情况适当安排)2008-1-15——2008-3-1确定论文题目,查找资料,撰写开题报告2008-3-2——2008-3-20查找资料,进一步分析题目研究内容2008-3-21——2008-4-10撰写论文并送老师第一次审查2008-4-11——2008-4-30论文第二次修改,老师第二次审查2008-5-1——2008-5-10论文第三次审查、修改并作毕业答辩前准备交论文,答辩课题研究所需主要设备、仪器及药品:
硬件:
计算机:
计算机若干台及其软硬件相关设施软件:
MicrosoftVisualC6.0及相配套运行环境外出调研主要单位,访问学者姓名:
常骥VC2004哈尔滨师范大学2008年5月随着开发工具的不断发展,能供程序员自由发挥的空间越来越小。
最直观的表现就是通过VisualC开发的极具特色的图形界面。
所以想要编写特色个性图形界面需花费更多努力。
这里对Windows界面中最重要的组成元素分别进行了介绍。
侧重VC在图形用户界面方面的应用,重点介绍如何利用VC实现应用系统的图形用户界面开发。
全文按应用程序界面开发的不同主题来编排内容,使大家迅速掌握图形用户界面的编程技术。
VisualC;图形界面;Windows界面第一章绪论.....................................................................................................................................11.1引言............................................................................................................................................11.2课题的目的和意义....................................................................................................................1第二章Windows用户界面制作基础..............................................................................................22.1用户界面设计基础....................................................................................................................22.2Windows编程机制....................................................................................................................52.3文档/视图结构概述................................................................................................................132.4MFC类库..................................................................................................................................13第三章按钮控件与编辑控件.......................................................................................................173.1按钮控件编程基础..................................................................................................................173.2编辑控件编程基础..................................................................................................................213.3CEditView类..........................................................................................................................23第四章组合框与列表视图控件...................................................................................................264.1组合框控件基础和形式..........................................................................................................264.2列表视图控件基础和形式......................................................................................................27第五章菜单与工具栏...................................................................................................................285.1菜单的编程基础......................................................................................................................285.2标准快捷动态菜单..................................................................................................................285.3工具栏的编程基础和创建......................................................................................................29第六章应用与实例.......................................................................................................................316.1改变按钮颜色..........................................................................................................................316.2改变按钮形状..........................................................................................................................336.3改变控件的外观.....................................................................................................................396.4改变控件的编辑及显示方式..................................................................................................406.5应用实例..................................................................................................................................41第七章总结...................................................................................................................................43参考文献.........................................................................................................................................44Abstract...........................................................................................................................................451第一章绪论应用程序的界面对用户的影响很大、无论程序代码如何高效,功能如何强大,如果用户发现他太难于使用,那么这个程序就不会得到广泛的应用。
当然并不是只有拥有出色的艺术天赋,才能创建出优秀的用户界面、绝大多数界面设计规则与小学图画课上讲的完全一致。
所以自然的设计是很重要的,在那些课上介绍的组分、颜色的设计规则同样也适用于计算机屏幕,这与使用蜡笔在纸上画图没有什么不同。
对于使用可视工具编程的程序员来说,创建用户界面是一件非常容易的事情,简单到只需要将控件拖动到对话框中,或在代码中调用一两个函数将自己绘制的位图设置为工具栏。
然而正是这种简单性,使得创建出的应用程序越来越千篇一律,缺乏个性。
关于这一点,可能大家也有机会。
在用户界面设计上多花一些心思不仅能美观应用程序,提高易用性,而且能够增加程序对用户的吸引力。
在设计用户界面之前,最好先参考一下一些非常优秀的软件界面,如果可能再参考一些很一般的软件界面,这样可以得到很多有用的信息。
而且自己在使用软件的过程中,对于用户界面也可能有一些想法和期望。
例如对于某个软件,你可能对它的一些地方很满意而对另一些则不太满意,那么就可以在自己设计中加以借鉴和改进。
当然,个人的看法可能并不太适合大多数用户,因此也需要用户的确认。
成功的应用程序都会为拥护提供多样化的选择。
例如MircosoftInternetExplorer允许用户使用菜单命令、键盘命令或直接拖放来进行文件拷贝。
提供多样化选择,能够提高应用程序的吸引力。
在应用程序中同一功能,应该至少能够通过键盘或鼠标完成。
程序员当然应该十分精通计算机,然而大多数用户可能并不太理解应用程序的技术问题。
他们只是讲应用程序作为一种更简单解决问题的工具。
一个好的应用程序界面应当将底层技术与用户分开,就像MFC类一样将底层功能包装在一个个的函数中。
用户界面设计的一个总的原则就是用户至上。
例如应用程序的设计是否能够吸引用户;在没有帮助的情况下,用户是否能够比较容易地发现应用程序的不同功能;应该如何为用户提供在线帮助等等。
所有的这些都要求程序员考虑的问题时,必须更多地从用户的角度出发。
从第二章开始主要介绍的是Windows用户界面的设计基础,第三章主要介绍按钮控件以及编辑控件的相应内容,第四章主要介绍的是组合框与列表框控件的相关内容,第五章主要介绍的是菜单与工具栏,第六章的主要内容是利用以上理论,以及相关的实践介绍制作内容,然后用实例进行演示操作。
通过以上几章的介绍可以帮助大家在图形界面开发方面有很大的帮助。
2第二章Windows用户界面制作基础在实际使用中,软件和硬件并不能实现无缝结合,硬件的发展速度和软件的更新并不同步。
这也就是说,错误几乎是不可避免的,因此错误处理也是用户界面设计的一部分。
当出现错误时,通常的方法是显示一个对话框,并询问用户应该如何处理。
而另一种不太常用的方法就是自己后台解决,而不是麻烦用户。
总而言之,用户关心的是完成特定任务,而不是技术细节。
因此在设计用户界面时,需要考虑到可能出现的错误,并确定哪些需要与用户交互处理,而哪些可以自己内部解决。
当应用程序出现错误时,如果需要与拥护进行交互,一般是通过对话框完成,而在代码中则使用分支语句(例如if�6�7else语句)。
对话框是应用程序界面的一部分,它的设计对于应用程序的易用性也非常重要。
在应用程序中设计错误信息对话框时,首先考虑这个信息对于用户是否有用;其次考虑按钮所给出的选项意思是否清楚、选项和消息是否适合等。
此外,如果仅仅显示一个错误信息会给用户造成不好的印象。
关于这一点,可能大家也有体会,例如Windows著名的蓝屏现象。
并不是所有的错误都需要用户处理。
对于在代码中就能够处理的错误,就无需通知用户,或者以不中断当前进度的方式进行通知。
关于这点,Word里的“自动更正”能就是一个很好的例子:
如果常用词出现错误则自行修改而如果不常用的词出现错误则以红色波浪线表示它以便用户以后修改。
错误处理的技术有好几种,但哪个更适合就需要程序员自己作出决定。
下面是一些通用的规则:
(1)在“编辑”菜单中添加“撤消”命令,这要比打断用户当前的操作,并显示对话框询问是否要撤消好一些。
(2)在状态栏显示提示,或使用闪烁的图标表示错误——这样用户在方便的时候进行处理。
(3)当错误很明显时,直接改正它。
例如当用户保存文件时,如果当前驱动器已满,则检查其他驱动器的空间,如果有可用的空间则保存文件;同时在状态栏上显示信息,告诉用户程序都做了什么。
(4)并非所有的错误都需要立即解决,这是可以采用将错误记录在日志文件中的方法。
供拥护方便时浏览Windows操作系统的一个重要优势在于它所有应用程序提供了相同的界面。
这样,一个有经验的用户能够很快掌握原先并没有使用过的Windows应用程序。
菜单就是一个很好的例子:
大多数Windows应用程序都遵循“文件”要比“文件”更合适。
或“帮助”菜单应该排在最左边,并且完全可以按照这些想法设计应用程序的界面。
然而,这样就会给用户带来不必要的混乱,并且当用户在切换到另一个应用程序时,还必须调整一下使用方式,这样就降低了程序的可用性。
此外菜单命令的位置也很重要。
例如,拥护希望在“编辑”菜单下找到“拷贝”、“剪切”和“粘贴”命令。
总之,除非有充分的理由,否则不应该改变公认的Windows界面规则。
使用已经存在的界面设计规则,不但能够使应用程序的可用性更好,而且会使自己的设计有个很好的开端。
检测用户界面可用性最好的手段,就是使用户自始至终地参与到设计过程中。
可用性检测的一个关键就是用户是否能够较为容易地了解如何使用应用程序功能。
应用程序的布局不仅影响其外观,而且对其本身的易用性有着举足轻重的作用。
这包括控件的位置、元素之间的协调性、空间的使用以及设计的简单性等。
31.控件位置在大多数界面设计中,并非所有的组成元素都具有同等的重要性,因此必须保证常用的重要元素处于最明显的位置。
决大多数语言都具有从左到右和从上到下的书写顺序。
因此当用户观看屏幕时,会从左上角开始——最重要的元素应该放置在那里,。
例如,如果在屏幕上显示包括消费者信息的表单,则应该首先显示姓名字段;而诸如“确定”或“下一步”之类的按钮,则应该在屏幕的右下方显示。
这是因为,通常用户只是在完成了整个表单后,才会单击这些按钮。
将元素和控件分组也非常重要。
将信息、功能近似或关联的控件分组排列,要比分散排列的好。
分组排列大多是通过组框等控件完成的。
2.协调性用户界面必须保证其协调性。
协调的外观和感觉将使应用程序看起来很舒服。
相反,缺乏协调性,会使应用程序看起来很混乱,从而使用户低估其功能和稳定性。
为了可视协调性,需要在开发前有一些大概的规划。
例如,控件的种类、尺寸以及字体等等。
这时先做一个模型将会有助于后续的开发。
由于VC提供了多种类型的控件,这很容易导致你产生将各种类型的控件都加以使用的想法。
在开发中必须注意避免出现类似想法,而应该仔细选择最合适的应用程序的一些控件。
例如列表框、组合框、列表视图控件和树试图控件都能用于显示一系列信息,但是对于开发者来说,应该尽可能地选择单一风格的控件。
此外,还需要注意的是所有控件是否合适。
例如将编辑框设置为只读用来显示文本不如使用静态文本控件更合适。
保证一致性对于界面设计也很重要,例如如果在某处允许用户编辑的文本属性设置为黑底白色,除非有充分的理由,不要在其他类似之处使用其他颜色配置。
出于易用性的考虑,在应用程序的不同窗口中也需要保证一定的一致性。
如果在应用程序的一个对话框中使用灰色背景,而在另一个对话框中使用白色背景,这会使整个应用程序看起来缺少内部联系。
总的原则就是选择什么风格就坚持什么风格,即使在某些情况下需要重新设计某些功能。
3.一致性抽象的说一致性就是某个对象的可视化线索,实际的例子到处都是。
例如,自行车上的把手就是手扶的地方。
有比如,在Windows应用程序中,“打开”工具栏按钮图标就是用于打开文件夹的。
通俗的讲,一致性就是看到其外观就能猜到其功能。
用户界面也需要使用一致性。
例如,应用程序中的具有三维效果的按钮表示它们可以被按下;而同时有存在具有平坦风格的按钮,那么就失去了一致性。
用户无法确定一个按钮到底是否是命令按钮。
有些情况下平坦风格按钮可能会更合适,例如游戏或多媒体应用程序。
但是,在应用程序中保持一致性是压倒一切的。
编辑框控件也提供某种方式的一致性。
一般来说,允许用户进行编辑的控件具有边界和白色背景。
当然你完全可以将控件的风格设置成为无边界,这些用户就不会很快意识到它是可以被编辑的。
4.空间的使用应用程序中空间的使用也很重要,它有助于改善程序的外观和对某些元素的强调。
当然空间并非一定要使用。
然而过多的控件拥挤在一起,会增加寻找的时间降低效率。
在设计时,需要综合考虑以确定最佳的分布。
使控件间距一致,以及控件垂直和水平对齐也会提高应用程序的易用性。
这与报纸中文字的有序排列会方便阅读的道理是一样的。
在VC中提供了一些工具用于调整布局,当读者使用资源管理器时会经常用到。
45.简单性界面设计中最重要的准则可能就是简单性了。
简单既美,这也是艺术中的一个准则。
如果应用程序的界面过于复杂,也会使用用户望而却步。
用户界面设计中经常出现的一个误区是试图以真实世界中的对象作为设计的模型。
例如要设计一个用于完成保险表单的应用程序,很自然的反映就是创建一个实际表单的翻版作为界面。
而这将会导致一些问题:
纸的尺寸和形状与屏幕上的不同,完全照搬就会使界面元素限于文本框和复选框,而这并没有为用户带来任何方便。
最好的方法是设计自己的界面,例如设计打印功能界面。
通过逻辑关系创建不同的标签或链接表单,从而使用户无需滚动翻页即可得到全部信息。
此外还可以使用列表控件为用户提供选择,这样能够减少用户的输入量。
只要多从用户的角度考虑,就会设计出相对简单易用的界面。
使用向导也能简化复杂的操作,这一点使用Windows软件较多的人会深有体会。
测试应用程序简单性的最好方法就是实际使用该程序。
如果在没有帮助的情况下,普通用户不能很快完成某个操作,那么就需要考虑重新设计了。
6.颜色多彩的界面会增加应用程序的吸引力现在使用的决大多数显示器能够显示数百万种颜色,这往往会导致用户对颜色的过度使用。
颜色的效果是千差万别的,用户的喜好也会因人而异。
因此在设计应用程序时,需要注意不同的文化中颜色的差异。
一般来说,在颜色的使用上应该持保守态度,尽量选择软色调和中性颜色。
当然,对颜色的选择也需要考虑用户的情况,例如,在设计儿童软件时,亮红色、绿色和黄色都是很好的选择;而对于金融或银行应用程序,这些颜色会产生反面影响。
使用少量的亮色能够有效地突出重要区域。
作为原则,在应用程序中应该限制颜色的数量,而且应该保持前后的一致性;应该尽可能使用标准16色调色板,这样会扩大应用程序的兼容性;此外,色盲用户也是需要考虑进内的。
7.图片和图标在应用程序中使用图片和图标,也能提高应用程序的吸引力。
图片所传达的信息有时是文字所远远不及的,同样,其致命的弱点在于不同人的理解可能也会不同。
工具栏按钮上的不同图标,形象地表达了不同的功能。
但是当用户不能确定某个图标的功能时,就会产生相反的作用。
在设计工具栏图标时,应该参考
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC 图形界面 开发 应用