2、择或控制它的方式来实现该自动任务。l提供用户自定义设置。因为用户的技能和喜好各不相同,因此他们必须能够个性化界面的某些方面。Windows为用户提供了对许多这方面的访问。您的软件应该反应不同的系统属性-例如颜色、字体或其他选项的用户设置。l采取交互式和易于感应的窗口,尽量避免使用模态对话框,而使用非模式辅助窗口。模式是一种状态,它排除一般的交互,或者限制用户只能进行特定的交互。当最好使用一个模式或该模式只是可替换的设计时-例如,用于在一个绘图程序中选定一个特定感觉-请确保该模式是显然的、可见的,是一个明确的用户选定的结果,并且容易取消。l在后台运行长进程时,保持前台式交互。例如,当正在打
3、印一个文档,即使该文档不能被改变,用户也应该可以最小化该窗口。l谅解。用户喜欢探索一个界面,并经常从尝试和错误中学习。一个有效的界面允许交互式的发现,它只提供一组合适的选择,并在用户可能破坏系统或数据的情况时发出警告。如果可行,还应提供可逆转或可还原的操作。即使在设计得很好得界面中,用户也可能犯错误。这些错误既可以是物理上得(偶然地指向了错误的命令或数据),也可以是逻辑上的(对选定哪一个命令或哪些数据做出了错误的决定)。有效的设计避免很可能导致错误的情况。它还包容潜在的用户错误,并且使用户易于还原。1.2.2.清楚一致的设计一致允许用户将已有的知识传递到新的任务中,更快地学习新事物,并将更
6、息的表达要言简意赅,易于理解而又不罗嗦;避免使用冗长的文字给用户反馈。1.2.3.有良好的直觉特征l用熟悉的隐喻为用户的任务提供直接而直观的界面。通过允许用户利用他们的知识和经验,隐喻使得预测和学习基于软件的表示的行为更加容易。l在使用隐喻时,不需要将基于计算机的实现局限在真实世界的对应物上范围之内。例如,与其基于纸张的对应物不同,Windows桌面上的文件夹可以被用来组织各种对象,例如打印机、计算器、以及其他文件夹。同样,Windows文件夹可以其真实世界对应物不可能的方式被排序。在界面中使用隐喻的目的是提供一个认知的桥梁;隐喻并不以其自身为最终目的。l隐喻支持用户认知而不是记忆。用
9、显示信息。通过隐藏向用户表达的信息,您减少了用户必须处理的信息数量。例如,您可以使用菜单来显示操作或选择的列表,还可以使用对话框来显示一组选项。渐进揭示并不意味着对显示信息使用非传统的技术,例如需要一个修饰键作为访问基本功能的唯一方法,或者强迫用户通过一个更长的分级交互序列。这会使用户界面更加复杂和麻烦。l美观。可视设计是应用程序界面的重要部分。可视属性提供了非常好的印象,并传达特定对象的交互行为的重要线索。同时,出现在屏幕上的每一个可视元素也是很重要的,它们可能竞争用户的注意。提供清楚地促进用户对表达的信息的理解的连贯环境。图形或可视设计器的技巧对于这一方面是无价的。1.3.细节约定1.
11、用空格、分组框、线条和标签,或者其它分隔符对用户界面控件进行分组。l使用强调使用焦点、位置、分组、层次、启用/禁用、大小、颜色或者字体等,来将注意力集中在需要首先看到的用户界面控件上。尽量以可视的方式指明用户接下来应该进行的操作。l使用可视的提示尽量使用近似的大小和间距来指出用户界面控件是相似的,而使用不同的大小和间距来指出用户界面控件视是不同的。l使用空格使用空格来创建一个透气室,以使窗口布局更易于理解,并且查看起来更舒服。空格的多少要适当,不要显得太分散。但是,要避免过多地使用空格。如果可能,尽量使窗口小一些。l警惕空洞不要到处粘贴公司或产品的名称及徽标。虽然在启动屏或关于框中出现
12、公司或产品名称及徽标是完全可以接受的,但其他窗口中的可用空间应该出现其他内容。如果没有其他内容,那么应尽量使窗口小一些。l注意大小使用用户界面控件的分辨率具有独立性。使用系统规格(使用GetGystemMetricsAPI函数)或文本规格(使用GetTextMetrics或GetTextExtentPoint32API函数)来确定用户界面控件的大小。任何显示文本的对象(如对话框或定义的文本文档)都应该使用文本规格。l考虑使用资源或预定义的布局网格资源模板或预定义的布局网格有助于您在不同的窗口之间实现一致性。注意,下页所示图的第二个对话框,与第一个不同,它有一个紧凑、从左到右、从上到
13、下的流程,并且,左对齐的标签很便于浏览;通过对齐编辑框并调整其大小,使它显得更有组织,更加平衡。不合理的平衡的对话框1.3.2.统一术语1.3.2.1.术语的重要性我们用名称来区别、描述和查找事物,使用名称来分解并理解不熟悉的事物。采用统一的术语有助于我们更好地理解和进行交流-简化并统一用户界面术语有助于用户理解和充分应用我们设计的界面。使用不同的术语描述相同的事物是最让人迷惑的,而改变人人都已经熟悉的术语也是有害的。这两种情况都使得程序难以讨论、描述,以及归档。甚至使它难以编程。1.3.2.2.命名下面是一些需要命名的、与界面有关的典型对象:程序本身;程序使用的文档类型;用户利用程序执
14、行的主要操作;所有的窗口、对话框和属性表;主程序窗口中的使用区域;认为非标准的屏幕对象、命令、属性、交互、或者技术。简而言之,用户可以看到或需要与其进行交互的、显示在菜单、工具栏、窗口、对话框、状态栏、联机帮助或文档中的任何内容都需要有一个名称。当然,您将会使用已存在的标准屏幕对象的名称。例如,您不需要命名常用的对话框,因为它们已经拥有名称。1.3.2.3.用用户的语言说话使用软件面向的用户所熟悉的词语,除非您的软件是为了程序员设计的,否则应该避免使用计算机行话,而应用常用的单词代替。例如,对绝大多数用户来说,常用单词separator(分隔符)就比技术术语delimiter(定界符)要好得
16、,否则就成花架子了。b、GUI规范不是一蹴而就,它和设计相互迭代,彼此补充,相互完善。3、GUI规范的内容70是通用原则,涉及产品图形控件的基本属性和构建的基本参数和原则,30是与项目或产品特点相适应的内容。这部分内容就是在设计过程中迭代产生。4、规范制定不是问题,最大的问题在于执行。必须打破现有的开发流程和组织架构,有专人负责界面编码和界面测试,才能保证规范能贯彻下来。让做逻辑和函数的编码工程师来执行,完全不可控,走样是自然的,因为他不懂,也不在乎,而且他有理由逃避责任。5、规范不能直接拿出来执行,篇幅太多,操作有难度。所以必须要让规范落地。也就是说,要有具体的设计文档作为执行的依据。设计文
17、档按照产品设计思路分片分线组织,所有设计文档结合起来就是整合的产品原型。所以说,GUI设计、交互设计、设计、规范、原型,执行是一个完整的互动的概念,牵一发而动全身。原文:UIdesign1.InterfaceSpecification1.1.Thegeneralprinciplesluser-centered.Controlledbytheuserinterfacedesign,ratherthancontroltheuserinterface.lclearandconsistentdesign.Allconsistentinterface
18、style,allhavethesamemeaningintermsconsistentandeasytounderstandlhaveagoodintuitivefeatures.Usersarefamiliarwiththerealitiesofworldaffairstogivetheuserhintsandabstractmetaphorstohelpusersquicklylearntousethesoftware.lfastresponse.lSimpleandbeautiful.1.2
19、.Theprincipleofdetailed1.2.1.UserControlUserinterfacedesignisanimportantprincipleisthattheusershouldalwaysfeelincontrolofthesoftware,ratherthanfeelingcontrolledbysoftware.loperatingontheassumptionthattheuser-notthecomputerorsoftware-Startaction.Userspl
20、ayanactiverole,ratherthanplayingapassiverole.Automatetaskswhenneeded,toallowtheusertoselectorcontrolofitswaytoachievetheautomatedtasks.ltoprovideuser-definedsettings.Becausetheusersskillsandpreferencesvary,sotheymustbeabletopersonalizecertainaspectso
21、finterface.Windowsprovideuserswithaccesstomanyinthisarea.Yoursoftwareshouldreflectthedifferentsystemattributes-suchascolor,font,orotheroptionsforusersettings.ltakeaninteractiveandeasyinductionofthewindowasfaraspossibleavoidtheuseofmodaldialogboxes,t
22、heuseofnon-modelsecondarywindow.Modelisastate,itexcludesgeneralinteractionorrestrictspecificusercanonlyinteract.Whenisbesttouseamodelorthemodelisdesignedtoreplace-forexample,adrawingprogramforaspecificselectedsense-makesurethepatternisclear,visible
23、,isaclearresultoftheuserselectedandeasytocancel.llongprocessrunninginthebackground,keepingtheformerdesktopinteraction.Forexample,whenadocumentisprinted,evenifthedocumentcannotbechanged,theusershouldbeabletominimizethewindow.lunderstand.Usersliketoe
24、xploreaninterface,andoftenlearnfromtrialanderror.Aneffectiveinterfaceallowsinteractivediscovery,onlytoprovideasuitablealternative,andmaydamagethesystemortheuserwhendatawarned.Ifpossible,alsoprovidereversibleorrestoreoperation.Eveninwelldesignedinterfacet
25、oo,theusermaymakemistakes.Theseerrorscanbebothphysicallyhave(accidentallypointstothewrongcommandordata),itcanbelogical(towhichtheselectedcommandordatawhichmadethewrongdecision).Effectivedesigntoavoidthesituationislikelytocauseerrors.Itisalsoinclusiv
26、eofpotentialusererrors,andenablesuserstoeasilyrestore.1.2.2.AclearandconsistentdesignAgreedtoallowuserstotransferexistingknowledgetonewtasks,learnnewthingsfasterandmorefocusonthetask.Thisisbecausetheydonottakethetimetotrytorememberthedifferentintera
27、ctions.Byprovidingasenseofstability,consistencymakestheinterfacefamiliarandpredictable.Consistentinallaspectsoftheinterfaceisveryimportant,includingthenameofthecommand,thevisualinformationthattheoperationbehavior,andtheelementswithinthescreenandthewindow
28、placement.lusethesamewordmeaningaunifiedterminology.Forexample,thematerialsstoredinwarehouse,notatthesametimeasitems,goods,spareparts,productsandmaterials,etc.,andunifiedconventionofatitle,andthisappellationisfamiliarandeasytounderstand.lUseaconsistent
29、setofcommandsandinterfacetodisplaycommonfeatures.Forexample,toavoidacopycommandinasituationtoperformanoperationimmediately,butinothercases,displayadialogboxaskstheusertypetargetandthenbeenforced.Shouldusethesamecommandtoperformasimilarfunctionforth
30、euser.lwithinthesameoperatingenvironment.MaintaintheWindowsinterfacetoprovideinteractiveoperationandahighdegreeofconsistencybetweentheagreement,userswillbeabletoquicklyfamiliarwiththeuseofthesoftware.luseofmetaphorconsistency.Ifaparticularbehaviorismore
31、afeatureofdifferentthings,butnotitsmetaphoricalmeaning,thentheusermaylearntoactandthethingsassociatedwithdifficulties.Forexample,anobjectplacedintheRecycleBin,theincineratorandthewastepaperbasketonbehalfofdifferentmodels.lestablishmentoftheprojectreser
32、vedwords.Throughtheestablishmentofreservedwordstoaclearanduniformterminologyandoperationcommands.ltoprovidevisualfeedback.Whenalongprocessrunninginthebackground(morethan1to10seconds,asthecasemaybe),mustprovideinformationsuchasinstructionsprogressbar.lUn
33、lessnecessary,donotprovideaudiblefeedback.Inaseriousproblemoccurs,youcanusesoundtoprompttheuser,butshouldgenerallyallowuserstocancelsound.ltokeeptextclear.Theexpressionofinformationtobeconciseandeasytounderstandwithoutwordy;toavoidlengthytexttotheus
34、erfeedback.1.2.3.Haveagoodintuitivefeatureslwithafamiliarmetaphorfortheuserstasktoprovidedirectandintuitiveinterface.Byallowinguserstousetheirknowledgeandexperience,metaphorandlearningbasedonthepredictedbehaviorofthesoftwarethatmucheasier.ltheuseofmetap
35、hor,theneedtolimittherealizationofcomputer-basedcounterpartintherealworldontherange.Forexample,insteadofdifferentpaper-basedcounterpart,Windowsfolderonthedesktopcanbeusedtoorganizevariousobjects,suchasprinters,calculators,andotherfolders.Similarly,Windows
36、folderscanbetheirrealworldcounterpartsinwaysnotpossibletobesorted.Theuseofmetaphorintheinterfaceisintendedtoprovideacognitivebridge;metaphorisnottheultimategoalofitsown.lmetaphortosupportuserawarenessratherthanmemory.Theusertorememberwithafamiliars
37、enseofthingsthantheyassociatedwithaspecificcommandtorememberthenamemucheasier.lthesamecommonsoftwareconsistency.Excellentuserinterfaceandtheprogramwillachievethesameuserpreviouslyusedthesoftwareinlinewithothersuccessfulaction.1.2.4.Fastresponseltokeepthe
38、interfacetoquicklyrespondtouseractions.ltoprovideshortcuts.Especiallyforalargenumberofinputitemsoftheinterfacethatletsusersdonotusethemousetocompletethefastdataentry.Theuserinterfacetoincludesomefeaturesthatallowexperiencedusersindifferentregionsoft
39、heinputdataquickly.Thesefeaturesincludetherepeatfunction,shortcutkeys,buttonswithmeaningfulicons,etc.,allofwhichallowtheusertocontrolthespeedandacceleratethedataentryinterface.lunlessabsolutelynecessary,donotredrawthescreen.1.2.5.Simpleandbeautifullsimple.
40、Theinterfaceshouldbeverysimple(notsimplistic),easytolearnandeasytouse.Itmustalsoprovidetheapplicationaccesstoallfunctions.Intheinterface,expandedfeaturesandkeepitsimpleiscontradictory.Aneffectivedesignshouldbalancethesegoals.Onewaytosupportthesimplici
41、tyoftheinformationthatisreducedtotheminimumrequiredforafullexchangeofinformation.Forexample,toavoidthecommandnameandmessagetextdescription.Longsentencesarenotrelevantordisturbyourdesign,makingitdifficultforuserstoeasilyextractimportantinformation.Another
42、simpleandusefulinterfacedesignapproachistousenaturalmappingsandsemantics.Interfaceelementsthataffecttheirarrangementandthesignificanceandrelevance.Interconnectedwithsimplefamiliarity.Familiarthingsoftenseemtobeeasier.Asfaraspossibletrytobuildusingtheuser
43、hastheknowledgeandexperienceofthecontact.Youcanusetheprogressiverevealtohelpusersmanagecomplexthings.Progressiverevealtheinformationrelatingtothecarefullyorganizedsothatonlyjustattherighttimetodisplayinformation.Expressedbyhiddentotheuserinformation,you
44、reducetheamountofinformationusersmustdealwith.Forexample,youcanusethemenutodisplayalistofactionsorchoices,youcanalsousethedialogboxtodisplayasetofoptions.Progressivedoesnotmeanthatthedisplayofinformationrevealtheuseofnon-traditionaltechniques,such
45、astheneedofamodifierkeyastheonlywaytoaccessbasicfunctions,orforceuserstointeractthroughalongersequenceclassification.Thismakesuserinterfacemorecomplicatedandcumbersome.lbeautiful.Visualdesignisanimportantpartoftheapplicationinterface.Propertyprovidesav
46、erygoodvisualimpression,andconveyaspecificobjectoftheinteractionsimportantclues.Atthesametime,appearsonthescreeneveryvisualelementisveryimportant,theymaycompeteusersattention.Provideclearinformationforusersontheexpressionofacoherentunderstandingoftheenv
47、ironment.Graphicdesignerorvisualskillsforthisaspectispriceless.1.3.Detailsoftheagreement1.3.1.interfacestylelusethesameconsistentlookandfeelwilluserinterfaceeasiertounderstandanduse.Userinterfacecontrolsshouldlookthesame.lusearrangementsandprocessesinWeste
48、rnculture(includingChinese),theyareusedfromlefttoright,toptobottomreading,therefore,importantinformationshouldbeplacedonthetopandleftside.Fromtheupperleftcorneroftheeasiesttoattractattention.lusethealignmentusuallyusetheleft-alignedtomakemoreeasytonavigateuserinterfacecontrols.Forthenumericaltext,youshoulduseadecimalpointalignedorrightaligned.Fornon-numerictext,andshouldavoidtheuseofright-alignedorcenteraligned.Donotusethemiddleofwhatarealigned,orkeepthemsymmetricalform.Theright