实验三 图形用户界面设计(汽院含答案)
MATLAB语言:MATLAB图形用户界面设计习题与答案

一、单选题1、用于获取当前图形窗口句柄的函数是()。
A.gcaB.gcfC.gcoD.gcw正确答案:B2、使用figure 函数建立图形窗口时,默认的标题是()。
A.图形窗口n(n是图形窗口的序号)B.Fig n(n是图形窗口的序号)C.Figure n(n是图形窗口的序号)D.Figure Window n(n是图形窗口的序号)正确答案:C3、用于决定坐标轴对象是否带边框的属性是()。
A.BoxB.GridC.PositionD.Font正确答案:A4、下列命令中,除一条命令外其他三条命令等价,这一条命令是()。
A.line(x,y,'Color','r');B.line(x,y,'r');C.plot(x,y,'Color','r');D.plot(x,y,'r');正确答案:B5、h代表一根曲线,要设置曲线的颜色为红色,可以使用命令()。
A.h.Color='r';B.h.color='r';C.h.COLOR='r';D.h.LineColor='r';正确答案:A6、用于标识图形对象的属性是()属性。
A.TitleB.StringC.Tagbel正确答案:C7、控件的BackgroundColor属性和ForegroundColor属性分别代表()。
A.前景色和背景色B.前景色和说明文字的颜色C.说明文字的颜色和背景色D.背景色和说明文字的颜色正确答案:D8、用于定义按钮被单击的响应的属性是()。
A.StringmandC.CallBackD.Value正确答案:C9、定义菜单项时,为了使该菜单项呈灰色,应将其Enable属性设置为()。
A.'On'B.'Off'C.'Yes'D.'No'正确答案:B10、用于检查和设置对象属性的图形用户界面设计工具是()。
图形用户界面 实验报告二

图形用户接口081180015 戴稚晖通信工程一、实验目的1、了解嵌入式系统图形用户界面的基本编程方法。
2、探讨软件结构的层次关系,学习图形库的制作。
一、实验原理概述1、图形用户界面简介图形用户界面(GUI)是一种图形化为基础的用户界面,使用统一的图形操作方式,如可移动的视图,选项及鼠标,作为用户与操作系统之间的桥梁,从而使用户摆脱了在命令行提示符下与操作系统进行交互的方式。
在嵌入式系统设计中,常被选择作为GUI系统进行开发的有:MiniGUI、MicroWindows、OpenGUI和QT/Embedded。
这些GUI系统都是以Frame Buffer作为图形驱动。
Frame Buffer作为Linux内核提供的一种底层图形接口,将显示设备映射到进程地址空间,是大多数GUI的基础。
2、Frame Buffer简介Frame Buffer又称之为帧缓冲或显存,是系统内的一段存储空间,与显示屏的整个显示区域相对应,通过改变帧缓冲区的内容来改变显示信息。
Frame Buffer的空间大小由显示屏的大小和显示模式决定。
显示屏可以以单色或者彩色显示,单色用一位来表示颜色,彩色可以用2、4、8、16、24、32等位色。
显示屏有单屏和双屏显示模式。
其中双屏显示模式将整个屏幕分为两部分,每个部分有各自的Frame Buffer,它们的地址无需连续,并有独立的两个通道将Frame Buffer中的数据传输到显示屏。
3、Frame Buffer与图像色彩Frame Buffer支持多种颜色显示方式:单色,伪彩色,真彩色,直接色,灰度。
伪彩色的RGB值不能直接从Frame Buffer中得到,而是通过调色板间接得到,此时Frame Buffer中存放的是调色板的索引值,通过索引值获得颜色。
真彩色的RGB值直接从Frame Buffer中得到,且不需要经过调色板。
直接彩色Frame Buffer里存放的是RGB值,但需要经过调色板调色后传输到显示屏。
汽车设计课后题答案

课后题答:@车架上平面线:纵梁上翼面较长的一段平面或承载式车身中部地板或边梁上缘面在侧(前)视图上的投影线作为标注垂直尺寸的基准线(面)即Z坐标线。
@前轮中心线:通过左右前轮中心并垂直于车架平面线的平面,在侧视图和俯视图上的投影线。
作为标注纵向尺寸的基准线(面),即X坐标线。
1-1@汽车中心线:汽车纵向垂直对称面在俯视图和前视图的投影线。
作为标注横向尺寸的基准线(面),即Y坐标线。
1-2@地面线:地平面在侧视图和前视图上的投影线。
@)@前轮垂直线:通过左右前轮中心并垂直千地面的平面,在侧视图和俯视图上的投影线。
@答:1.乘用车广泛采用发动机前置前驱的因素如下:@前桥轴荷大,有明显的局限性转向性能。
® 前轮驱动,越过障碍的能力强。
包)主减速器和变速器装在一个壳体中,动力总成结构紧凑,且不需要在变速器与主减速器间设立传动轴车内地板凸包高度可减少,提高乘坐舒适性。
@)发动机布置在轴距外,汽车的轴距可以缩短,有助千提高汽车的机动性。
(J)汽车的散热器布置在汽车前部,散热条件好,发动机可以得到足够的冷却。
@)有足够大的空间布置行李箱。
©2客车广泛采用后置后驱的因素:@隔绝发动机的气味和热量。
@客车前、中部基本不受发动机噪声和工作振动的影响。
® 检修发动机方便。
® 轴荷分派合理。
@后桥簧上质量与簧下质量比增大,提高乘坐舒适性。
作为城市间客车使用,可在地板下方和客车全宽范围,设立体积很大的行李箱。
汽车的重要参数分几类?各类又具有哪些参数?各质量参数是如何定义的?汽车的重要参数有尺寸参数、质量参数和性能参数。
尺寸参数涉及外廓尺寸、轴距、轮距、前悬、后悬、货车车头长度和车厢尺寸。
质量参数涉及整车整备质量m、载质量、质量参数、汽车总质量和轴荷分派。
性能参数涉及动力性参数、燃油经济性参数、最小转弯直径、通过性几何参数、稳定操作性参数、舒适性。
© 参数的拟定:@)整车整备质量m:车上带有所有装备(涉及备胎等),加满燃料、水,但没有装货和载人的整车质量。
网站界面(UI)设计考试真题(带答案)

精品文档网站界面(UI)设计2016年春考试真题(带答案)一、多选题1.关于扁平化风格图标的表述正确的有(ABCD)A、简约风格B、有利于提高系统性能C、不强调质感与细节的描摹D、强调功能性2.在开展设计工作之前,我们力求做到知己知彼,这里的“彼”指(ABCD )A. 对所服务的客户的认知,和客户保持良好的沟通B. 对网站目标用户的深入理解C. 对竞争对手的了解D. 对网站目标用户的深入理解3.关于全局导航的描述正确的有(ACD )A. 出现在网站所有的页面中B. 位置一定在网页的顶部C. 体现网站最重要的内容层次结构D. 帮助用户在网站中迅速定位4.对于用户导向原则在网站界面设计中的具体体现描述准确的是(ABCD )A. 明确体现网站的核心功能和服务B. 符合用户在使用网站时的心智模型和场景中的思维状态C. 尊重人机交互中用户的生理特征D. 符合用户的认知习惯5.下列关于心智模型表述准确的有(ABCD )A. 根据用户的心智模型来选择信息的组织方式是优秀网站成功的重要因素。
B. 人们通常基于自身经验和现有知识来理解新事物。
C. 有助于用户理解如何使用网站的设计属于符合心智模型的设计。
D. 重视情景因素对用户行为的影响。
精品文档6.文字图层中的文字信息哪些可以进行修改和编辑?( ABC )A. 文字颜色B. 文字内容,如加字或减字C. 文字大小D. 将文字图层转换为像素图层后可以改变文字的字体7.建立有效布局的手段有(ABCD )A. 有选择的展现信息,分清主次B. 预先对信息进行科学的分类,整理好优先级C. 遵循用户习惯,同时给予适当的引导推荐D. 不同信息找到最合适的表现方式8.下列可以帮助加强色彩对比的方法有(ABD )A. 色相互补B. 明度差异大C. 色相临近D. 饱和度差异大9.如何让界面中的重要元素变得突出,下列处理手段合理的有(ABC )A. 使用鲜艳的色彩B. 注意周围的留白C. 放在用户浏览网页视线中的重要位置D. 越大越好10.当选择“文件>新建”命令,在弹出的“新建”对话框中可设定下列哪些选项?(ABC )A. 图像的高度和宽度B. 图像的分辨率C. 图像的色彩模式D. 图像的标尺单位11.下列哪些方法可以产生新图层?(BCD )A. 双击图层控制调板的空白处,在弹出的对话框中进行设定选择新图层命令B. 单击图层调板下方的新图层按钮C. 使用鼠标将将图像从当前窗口中拖动到另一个图像窗口中D. 使用文字工具在图像中添加文字精品文档12.网站界面中越来越多出现高清大图和视频的原因在于(ABCD )A. 带宽流量和服务器性能的改善B. 视觉冲击力强C. 用户体验好D. 视频可负载的信息量很多13.优秀的网站图标一般具备以下哪些特点(ABCD )A. 形象定义准确B. 造型完整简明C. 风格统一D. 配色协调14.下列关于Photoshop 打开文件的操作,哪个是正确的?(ABCD )A. 选择“文件>打开”命令,在弹出的对话框中选择要打开的文件B. 选择“文件>最近打开文件”命令,在子菜单中选择相应的文件名C. 如果图像是Photoshop 软件创建的,直接双击图像图标D. 将图像图标拖放到Photoshop 软件图标上15.下列关于黄色的描述准确的有(ABCD )A. 气质明快生动B. 当明度降低时,色彩面貌会发生很大的变化C. 饱和的黄色经常充当强调色D. 饱和的黄色在儿童站点及针对年轻人的网站中常见。
实验三--图形用户界面设计(汽院含答案)

实验三图形用户界面设计实验目的1.掌握Java语言中GUI编程的基本方法2.掌握Java语言中AWT组件的基本用法3.掌握Java语言中Swing组件的基本用法实验导读1.通过图形用户界面(GUI:Graphics User Interface),用户和程序之间可以方便地进行交互。
AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。
AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。
Swing是一个用于开发Java应用程序用户界面的开发工具包。
它以抽象窗口工具包〔AWT〕为基础使跨平台应用程序可以使用任何可插拔的外观风格。
Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。
JDK写程序所有功能都是靠虚拟机去操作本地操作系统。
比方window下,就是JDK用windows API实现功能。
而awt包中很多组件是组件自身去调用本地操作系统代码swing包中的组件采用的是调用本地虚拟机方法,由虚拟机再调用本地操作系统代码。
意思就是中间多了一层,这样就加强了swing包的移植性,与本地关系不那强了。
图3.1 AWT常用组件继承关系图Container为容器,是一个特殊的组件,该组件中可以通过add方法添加其他组件进来。
2.布局,容器中的组件的排放方式。
常见的布局管理器:FlowLayout〔流式布局管理器〕:从左到右的顺序排列。
Panel默认的布局管理器。
BorderLayout〔边界布局管理器〕:东,南,西,北,中。
Frame默认的布局管理器。
GridLayout〔网格布局管理器〕:规则的矩阵CardLayout〔卡片布局管理器〕:选项卡GridBagLayout〔网格包布局管理器〕:非规则的矩阵3.类JFrame是java.awt.Frame 的扩展版本,该版本添加了对JFC/Swing 组件架构的支持,常用方法如下:1)JFrame() 该构造方法可以创建一个无标题的窗口,窗口的默认布局为BorderLayout布局。
嵌入式系统图形用户界面设计考试试卷

嵌入式系统图形用户界面设计考试试卷(答案见尾页)一、选择题1. 嵌入式系统图形用户界面(GUI)设计的基本原则是什么?A. 界面简洁易用B. 交互性强C. 高性能D. 易于维护2. 嵌入式系统的图形用户界面设计中,图标的设计要求包括哪些?A. 图标大小要适中B. 图标颜色鲜艳C. 图标形状要规则D. 图标与桌面背景对比度高3. 嵌入式系统中,文本界面的设计需要注意什么?A. 字体清晰可见B. 文本布局要合理C. 文本颜色与背景有明显区分D. 文本输入方便快捷4. 嵌入式图形用户界面中,按钮的设计原则是什么?A. 按钮大小要适中B. 按钮形状要规则C. 按钮颜色醒目D. 按钮响应速度快5. 嵌入式系统中,菜单设计应该遵循什么原则?A. 菜单层次分明B. 菜单项简洁明了C. 菜单深度适中D. 菜单使用便捷6. 嵌入式图形用户界面中,窗口设计的原则是什么?A. 窗口大小可调B. 窗口位置固定C. 窗口标题清晰D. 窗口视觉效果突出7. 嵌入式系统中,触摸屏界面的设计需要考虑哪些因素?A. 触摸响应速度B. 触摸精度C. 触摸反馈机制D. 触摸抗干扰能力8. 嵌入式图形用户界面中,图形和图像的使用应该遵循什么原则?A. 图形和图像清晰可见B. 图形和图像与界面主题相符C. 图形和图像使用适量,避免遮挡内容D. 图形和图像颜色鲜艳,引人注目9. 嵌入式系统中,语音用户界面(VUI)的设计需要注意什么?A. 语音识别准确率高B. 语音合成自然流畅C. 语音交互响应迅速D. 语音隐私保护10. 嵌入式图形用户界面中,可访问性的设计原则包括哪些?A. 界面元素尺寸适中,容易操作B. 颜色对比度适中,便于阅读C. 声音提示清晰,便于理解D. 提供文本提示和帮助信息11. 嵌入式系统图形用户界面(GUI)设计的基本原则是什么?A. 界面简洁易用B. 快速响应C. 适应不同分辨率D. 高性能处理器12. 嵌入式系统图形用户界面中的色彩应用非常重要,原因不包括以下哪项?A. 提高视觉效果B. 增强用户体验C. 增加动画效果D. 降低系统功耗13. 嵌入式系统中,通常采用哪种类型的触摸屏技术?A. 电阻式B. 电容式C. 红外线式D. 超声波式14. 嵌入式系统图形用户界面设计中,图标的设计需要注意以下几点:A. 图标大小要适中B. 图标风格统一C. 图标色彩鲜艳D. 图标设计要符合应用场景15. 在嵌入式系统图形用户界面设计中,文本排版时需要注意什么?A. 字体大小要适中B. 行距和字距要适当C. 文本颜色与背景色要有明显对比度D. 文本排列要整齐有序16. 嵌入式系统图形用户界面设计中,布局设计的原则包括:A. 一致性原则B. 可视性原则C. 反馈原则D. 灵活性原则17. 嵌入式系统图形用户界面设计中,动画效果的使用应该遵循以下原则:A. 动画效果要简单易懂B. 动画效果要与交互目标相关C. 动画效果要适度,不要过于复杂D. 动画效果要符合应用场景18. 嵌入式系统图形用户界面设计中,如何平衡美观与实用性的关系?A. 追求美观的外观设计B. 注重实用功能的设计C. 根据实际需求进行合理设计D. 结合项目具体需求进行设计19. 嵌入式系统图形用户界面设计中,如何处理不同屏幕尺寸和分辨率的问题?A. 使用响应式设计B. 提供多种界面风格C. 简化界面元素D. 优化图形渲染性能20. 嵌入式系统图形用户界面设计中,如何评估设计的有效性?A. 用户满意度调查B. 系统性能指标C. 设计评审和反馈D. 以上都是21. 嵌入式系统图形用户界面(GUI)设计的基本原则是什么?A. 界面简洁易用B. 适应不同分辨率的屏幕C. 快速响应用户操作D. 以上都是22. 嵌入式系统中,常用的GUI框架有哪些?A. QtB. GTK+C. SDLD. all of the above23. 在嵌入式系统图形用户界面设计中,如何处理不同屏幕尺寸和分辨率的问题?A. 使用相对布局B. 提供多种界面布局模板C. 采用可伸缩的UI元素D. 以上都是24. 嵌入式系统图形用户界面设计中,如何优化性能?A. 减少界面中的控件数量B. 优化绘图代码C. 使用高效的渲染技术D. 以上都是25. 嵌入式系统图形用户界面设计中,如何处理触摸操作?A. 使用专用的手势识别库B. 对触摸事件进行防抖和节流处理C. 采用物理模拟的方式来处理触摸操作D. 以上都是26. 在嵌入式系统图形用户界面设计中,如何考虑用户体验(UX)?A. 界面设计要符合用户的习惯和需求B. 界面布局要直观易懂C. 界面交互要尽可能简单D. 以上都是27. 嵌入式系统图形用户界面设计中,如何平衡美观与实用?A. 遵循设计原则和规范B. 结合产品目标和市场需求C. 考虑成本和资源限制D. 以上都是28. 嵌入式系统图形用户界面设计中,如何进行用户测试和反馈?A. 设计调研问卷B. 在目标平台上进行原型测试C. 收集用户反馈并进行迭代优化D. 以上都是29. 嵌入式系统图形用户界面设计中,如何应对不同的硬件平台?A. 使用跨平台的开发工具B. 提供多种硬件适配器C. 优化图形渲染性能D. 以上都是30. 在嵌入式系统图形用户界面设计中,如何考虑安全性?A. 防止恶意软件攻击B. 保护用户隐私数据C. 遵循相关法律法规D. 以上都是31. 嵌入式系统图形用户界面(GUI)设计的基本原则是什么?A. 界面简洁易用B. 快速响应C. 适应不同分辨率和屏幕尺寸D. 高性能处理器32. 嵌入式系统中,常用的GUI框架有哪些?A. QtB. GTK+C. SDLD. Eclipse33. 在嵌入式系统的GUI设计中,如何处理不同屏幕尺寸和分辨率的问题?A. 使用相对布局B. 提供多种界面布局选项C. 自适应布局D. 采用固定的像素尺寸34. 嵌入式系统图形用户界面设计的评估标准包括哪些?A. 界面美观性B. 系统稳定性C. 用户友好性D. 性能效率35. 在嵌入式系统中,如何优化GUI的响应速度?A. 优化代码执行效率B. 减少GUI组件的数量C. 使用更快的硬件D. 采用异步处理机制36. 嵌入式系统图形用户界面设计中,如何平衡美观性和实用性?A. 简化界面元素B. 采用自然和直观的布局C. 提供个性化设置选项D. 保证系统稳定性和可靠性37. 在嵌入式系统的GUI设计中,如何处理多任务处理和实时响应的问题?A. 使用优先级调度算法B. 采用事件驱动架构C. 确保实时任务得到及时处理D. 优化内存管理38. 嵌入式系统图形用户界面设计中,如何考虑用户体验(UX)?A. 进行用户调研和需求分析B. 设计易于理解和使用界面C. 提供友好的错误提示和帮助文档D. 优化界面性能和响应速度39. 在嵌入式系统图形用户界面设计中,如何确保系统的安全性和可靠性?A. 采用加密技术保护用户数据B. 实施严格的权限控制机制C. 定期进行系统检测和更新D. 提供容错和恢复功能40. 嵌入式系统图形用户界面设计的发展趋势是什么?A. 更加注重用户体验(UX)B. 引入更多的个性化设置选项C. 采用更先进的渲染技术和图形引擎D. 支持更广泛的硬件平台二、问答题1. 什么是嵌入式系统图形用户界面(GUI)设计?它的主要组成部分是什么?2. 嵌入式系统图形用户界面设计的原则有哪些?3. 如何评估嵌入式系统图形用户界面的性能?4. 嵌入式系统图形用户界面设计的挑战有哪些?5. 如何优化嵌入式系统图形用户界面的性能?6. 嵌入式系统图形用户界面设计的未来发展趋势是什么?7. 请举例说明一个成功的嵌入式系统图形用户界面设计案例。
《界面设计》模考试题与参考答案

《界面设计》模考试题与参考答案一、单选题(共60题,每题1分,共60分)1、下面不属于CSS插入形式的是( )A、嵌入式B、索引式C、内联式D、外部式正确答案:A2、下列属于交互方案的是( )A、交互状态B、内容说明C、高保真原型D、人物角色正确答案:D3、如果功能不存在时用户并没有感觉,但存在用户很开心,那么这个功能属于( )A、重要B、惊喜C、无关D、必要正确答案:B4、下列不属于交互设计师必备的素质的是( )A、创新能力B、逻辑思维能力C、同理心D、别具一格的设计审美正确答案:D5、下列不属于图标构成方式的是( )A、线+面B、点+线C、线D、面正确答案:B6、在lllustrator中绘制多边形时,可以选择多边形工具拖拽,按下键盘上( )来增加和减少边数。
A、上下箭头B、shift+上下箭头C、左右箭头D、Ctrl+左右箭头正确答案:A7、下列关于Sketch说法正确的是( )A、除官网外,Sketch还有其他下载渠道B、Sketch 仅限于Mac OS系统使用C、Sketch 可以在移动端使用D、Sketch 是免费下载的软件正确答案:B8、下列不属于可以添加在全局交互中的内容的是( )A、通用方案B、通用模块C、通用流程D、通用策略正确答案:D9、UI设计是什么意思( )A、User Intention 的缩写,是指用户意图设计B、Usr Iocntits 的缩写,是指用户识别设计C、Ussr Interface的缩写。
是指用户界面设计D、User Ideal的缩写,是指用户目标设计正确答案:C10、ToC.的意思是( )A、ToC.onsumerB、rkC、ssD、tomer正确答案:D11、"若要以加粗宋体、12号字显示"vbscript"以下用法中,正确的是( )"A、vbscriptB、vbscriptC、vbscriptD、vbscript正确答案:B12、在PHOTOSHOP中,快捷键Ctrl+Alt+C将打开哪个操作面板 ( )A、图像大小B、自动色调C、自动对比度D、画布大小正确答案:D13、UI界面设计首先要做到( ),只有让用户认可它、知道怎么样使用它,让用户在使用时预期会发生什么,并方便地与它交互,然后才能让用户喜欢你设计的UI。
青岛理工大学-实验4:图形用户界面设计

produceExam[i] = new ProduceExam(this.qustion[i],chooser[i]);
}; ProduceExam[] produceExam = new ProduceExam[5]; //统计选择正确的答案的个数,重复选择的不算 private int totalture = 0;
private JLabel endScore = new JLabel("你一共答对题 目:");
"你确定要提交答案吗?") == JOptionPane.OK_OPTION)
{ endScore.setText("你一共答对题目: "
+ totalture +"道"); }
} } }); restart.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){
课程实验报告
课程名称
ቤተ መጻሕፍቲ ባይዱ
Java 应用技术
班级 计算 112 实验日期 2013.10.24
姓名
学号
实验成绩
实验名称
实验 4:图形用户界面设计
实
1.掌握窗口和菜单的使用;
验
目
2.掌握文本框、按钮的使用、标签等常用图形组件的使用;
的
3.掌握面板和画布的使用及布局设计;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三图形用户界面设计实验目的1.掌握Java语言中GUI编程的基本方法2.掌握Java语言中AWT组件的基本用法3.掌握Java语言中Swing组件的基本用法实验导读1.通过图形用户界面(GUI:Graphics User Interface),用户和程序之间可以方便地进行交互。
AWT(Abstract Windowing Toolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。
AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类又被称为组件(components)。
Swing是一个用于开发Java应用程序用户界面的开发工具包。
它以抽象窗口工具包(AWT)为基础使跨平台应用程序可以使用任何可插拔的外观风格。
Swing开发人员只用很少的代码就可以利用Swing丰富、灵活的功能和模块化组件来创建优雅的用户界面。
JDK写程序所有功能都是靠虚拟机去操作本地操作系统。
比如window下,就是JDK用windows API实现功能。
而awt包中很多组件是组件自身去调用本地操作系统代码swing包中的组件采用的是调用本地虚拟机方法,由虚拟机再调用本地操作系统代码。
意思就是中间多了一层,这样就加强了swing包的移植性,与本地关系不那强了。
图3.1 AWT常用组件继承关系图Container为容器,是一个特殊的组件,该组件中可以通过add方法添加其他组件进来。
2.布局,容器中的组件的排放方式。
常见的布局管理器:FlowLayout(流式布局管理器):从左到右的顺序排列。
Panel默认的布局管理器。
BorderLayout(边界布局管理器):东,南,西,北,中。
Frame默认的布局管理器。
GridLayout(网格布局管理器):规则的矩阵CardLayout(卡片布局管理器):选项卡GridBagLayout(网格包布局管理器):非规则的矩阵3.类JFrame是java.awt.Frame 的扩展版本,该版本添加了对JFC/Swing 组件架构的支持,常用方法如下:1)JFrame() 该构造方法可以创建一个无标题的窗口,窗口的默认布局为BorderLayout布局。
2)JFrame(String s) 该构造方法可以创建一个标题为s的窗口,窗口的默认布局为BorderLayout布局。
3)public void setBounds(int a,int b,int width,int height) 窗口调用该方法可以设置出现在屏幕上时的初始位置是(a,b),即距屏幕左面a个像素、距屏幕上方b个像素;窗口的宽是width,高是height。
4)public void setSize(int width,int height) 设置窗口的大小,窗口在屏幕出现是默认位置是(0,0)。
5)public void setVisible(boolean b) 设置窗口是可见还是不可见,窗口默认是不可见的。
6)public void setResizable(boolean b) 设置窗口是否可调整大小,窗口默认是可调整大小的。
7)public void setDefaultCloseOperation(int operation) 设置用户在此窗体上发起"close" 时默认执行的操作。
8)public void setLocationRelativeTo(Component c) 设置窗口相对于指定组件的位置。
如果组件当前未显示,或者c 为null,则此窗口将置于屏幕的中央。
实验内容1.图形用户界面设计程序(ArtFont.java)要求:设计一个文字字体设置窗体,在该窗体中可以设置要显示文字的字体内容,包括字体名称、字体大小、粗体和斜体等字体风格。
并模拟在不同操作系统下的显示效果。
程序的最终显示效果如下:提示:整个窗体继承于JFrame,采用BorderLayout布局。
在窗体中添加三个JPanel:northPanel、centerPanel和southPanel,分别位于窗体的北部、中部和南部,然后分别在各个面板中添加其它组件,并逐步完善程序功能。
请按以下步骤完成程序设计:1)新建ArtFont类,该类用于显示主界面。
其主要代码如下:public class ArtFont extends JFrame {JComboBox fontType;//字体样式下拉框,JComboBox fontSize;//字体大小下拉框JComboBox windowStyle;//窗体样式下拉框JCheckBox boldBx;// 粗体按钮JCheckBox italicBx;// 斜体按钮JButton colorBtn;// 颜色按钮;String[] fontNames;// 字体名称;String[] fontSizes;// 字体大小;JLabel label;// 输入提示标签;JTextField inputText;// 文字输入框;JTextArea txtArea;// 文字显示区;JPanel northPanel;// 字体设置;JPanel centerPanel;// 显示效果区JPanel southPanel;//样式设置Font font;int boldStyle, italicStyle, underlineStyle;int fontSizeStyle;String fontNameStyle;Color colorStyle= Color.black;// 设置字体的默认颜色为黑色;String[] style= { "默认显示效果", "Windows显示效果", "Unix 显示效果" };public ArtFont() {super("字体设置");// 设置默认字体boldStyle = 0;italicStyle = 0;underlineStyle = 0;fontSizeStyle = 10;fontNameStyle = "宋体";font = new Font(fontNameStyle, boldStyle + italicStyle, fontSizeStyle);northPanel = getNorthPanel();centerPanel = getCenterPanel();southPanel = getSouthPanel();// 设置容器;Container container = getContentPane();container.setLayout(new BorderLayout());【补充代码】//将northPanel添加到窗体的北部【补充代码】//将centerPanel添加到窗体的北部【补充代码】//将southPanel添加到窗体的北部setSize(500, 300);【补充代码】//将窗体位于屏幕的中央setVisible(true); }private JPanel getNorthPanel() {JPanel panel = new JPanel();return panel;}private JPanel getCenterPanel() {JPanel panel = new JPanel();return panel;}private JPanel getSouthPanel() {JPanel panel = new JPanel();return panel;}public static void main(String args[]) {ArtFont artFont = new ArtFont();artFont.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );}}2)根据ArtFont类代码和程序界面图设计北部面板northPanel:private JPanel getNorthPanel() {JPanel panel = new JPanel();【补充代码…】return panel;}3)根据ArtFont类代码和程序界面图设计中部面板centerPanel:private JPanel getCenterPanel() {JPanel panel = new JPanel();【补充代码…】return panel;}4)根据ArtFont类代码和程序界面图设计南部面板southPanel:private JPanel getSouthPanel() {JPanel panel = new JPanel();//获得系统默认字体GraphicsEnvironment ge =GraphicsEnvironment.getLocalGraphicsEnvironment();fontNames = ge.getAvailableFontFamilyNames();fontType = new JComboBox(fontNames);//设置字体大小fontSizes = new String[63];for (int i = 0; i < fontSizes.length; i++) { fontSizes[i] = Integer.toString(i+10);}【补充代码…】return panel;}5)调试、编译和运行程序,并显示正确界面。
ArtFont artFont = new ArtFont();artFont.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}2.日历应用程序设计编写一个应用程序,设计一个窗体,该窗体为BorderLayout布局。
窗体的中心添加一个Panel容器:Panel容器的布局是7行7列的GridLayout布局,Panel容器中放置49个标签,用来显示日历。
窗口的北面添加一个Panel容器,其布局是FlowLayout布局,Panel容器中放置两个按钮:nextMonth和previousMonth。
窗口的南面添加一个Panel容器,其布局是FlowLayout,Panel容器中放置一个标签用来显示一些信息。
请按以下步骤完成程序设计:1)编写CalendarBean类,实现日期类:public class CalendarBean {String day[];int year = 2013, month = 0;public void setYear(int year) {this.year = year;}public int getYear() {return year;}public void setMonth(int month) {this.month = month;}public int getMonth() {return month;}//返回某年某月1号开始的日期数组public String[] getCalendar() {String a[] = new String[42];Calendar 日历 = Calendar.getInstance();//注意:1月份是从0开始,所以要减1日历.set(year, month - 1, 1);int星期几 = 日历.get(Calendar.DAY_OF_WEEK) - 1;int day = 0;if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {day = 31;}if (month == 4 || month == 6 || month == 9 || month == 11) {day = 30;}if (month == 2) {if(((year% 4 == 0) && (year% 100 != 0)) || (year% 400 == 0)) {day = 29;} else {day = 28;}}for (int i = 星期几, n = 1; i < 星期几 + day; i++) { a[i] = String.valueOf(n);n++;}return a;}}2)补充代码,完成日历窗体界面类设计:public class CalendarFrame extends Frame {Label labelDay[] = new Label[42];Label labelYear;Button titleName[] = new Button[7];Button nextMonth, previousMonth;Label showMessage;TextField inputYear;CalendarBean calendar;String name[] = { "日", "一", "二", "三", "四", "五", "六" };int year = 2013, month = 1;String days[];public CalendarFrame() {calendar = new CalendarBean();calendar.setYear(year);calendar.setMonth(month);days = calendar.getCalendar();ScrollPane scrollPane = new ScrollPane();scrollPane.add(getCenterPanel());【补充代码】// 窗口添加scrollPane在中心区域【补充代码】// 窗口添加pNorth 在北面区域【补充代码】// 窗口添加pSouth 在南区域。