Qt英文文献.docx
《Qt英文文献.docx》由会员分享,可在线阅读,更多相关《Qt英文文献.docx(9页珍藏版)》请在冰点文库上搜索。
Qt英文文献
QtisacrossplatformC++graphicaluserinterfaceapplicationframework.Itprovidesapplicationdeveloperstobuildastate-of-the-artgraphicaluserinterfacefunctionalityrequiredby.Qtisfullyobjectoriented,andiseasytoextend,andallowstherealcomponentprogramming.Ithasbecomeaworldwidethousandsofsuccessfulapplicationbased.QtisalsopopularLinuxdesktopenvironmentbasedKDE,KDEisallofthemajorLinuxeditionofastandardcomponent.Qtsupportsthefollowingplatforms:
MS/Windows-95,98,NT4,ME,2000,XPandVista,
Unix/X11-Linux,SunSolaris,HP-UX,CompaqTru64UNIX,IBMAIX,SGIIRIXandmanyotherX11platformMacintosh-MacOSXEmbedded-framebuffer(framebuffer)tosupporttheLinuxplatform,WindowsCE.NokiaQtisaproductofthecompany.QtopensourceversionisQtonlyinordertodevelopfreeandopensourcesoftware,providesthecommercialversionofthesamefunction.TheGNUgeneralpubliclicense,itisfree.Thelatestversioncanbedownloadedhere.FromMay11,2009onwards,NokiaQtSoftwareannouncedtheQtsourcecodelibraryopentothepublic,QtdevelopersthroughtheQtandQtprojectsrelatedtocontributecode,translation,sampleandothercontent,toguideandshapethefuturedevelopmentofQt.IntheintroductionofopenQtcodelibraryatthesametime,QtSoftwareinitsofficialwebsiteannouncedtheirproductplanning(Roadmap).Theoverviewoftheresearchanddevelopmentprojectofnewfunction,showthestagedirectionsforfuturedevelopmentofQtpointofview,inordertoencouragethecommunitytoprovidefeedbackandcontributecode,toguideandshapethefutureofQt.Qt4.6includesthefirstsupportfortheSymbian,andinitssupportingplatformaddedWindows7,AppleMacOS10.6(snowleopard)andtheupcomingMaemo6.QtonSymbianandMaemosupportfordeveloperscreatedusingthesamecodelibraryatthesametime,thetwoplatformforthedevelopmentopportunities.Abletocrosstheplatformtosharecodemeansthatdeveloperstodevelopapplicationslistedspeedwillbefaster,effectofthedeviceusergroupwillbewider.QtMobilityprojectunderthenewQtAPItechnologypreviewwasreleasedatthesametimeintoday.ThesecrossplatformAPIprovidesdeveloperswithavarietyoffunctions,suchasnavigationequipmentlocalizationfunction,andinformationtransmittingandreceiving,contactsandnetworkconnectionmanagement.Qt4.6isinthe4.5graphicalenhancementsonthebasisofthecreation,andfurtherstrengthenthegraphicsfunction,addingnewanimationframework(AnimationFramework)--includingintuitivestatemachinefunction--aswellasanewadvancedgraphicsfunctions,suchasopaque,shadow,flashandfilter.ThereleaseofQt4.6,QtdevelopmentascrossplatformIDEQtCreatoralsoreleasedanupdatedversion.QtCreator1.3andQt4.6togetherconstitutetheQtSDK,includingthedevelopmentofcross-platformapplicationsforallofthefunctions.QtgoodencapsulationmechanismmakesQtmodulardegreeishigh,canbereused,forusersdevelopmentisveryconvenient.Qtprovidesasafetypecalledsignals/slotsinsteadofcallback,whichmakeseachelementofcollaborativeworkbetweenbecomesverysimple.Qtincludesupto250morethanC++,alsoprovidesatemplatebasedcollections,serialization,file,I/Odevice,directorymanagement,date/time.Evenaregularexpressionprocessingfunction.XMLsupport.Webkitengine,canachievethelocalinterfacewithWebcontentintegration.ButwhatmakestheQtinthefreesoftwareworldmanyWidgets(suchasLesstif,Gtk,EZWGL,Xforms,fltketc.)inthetalentshowingitselfisbasedonQtheavyweightsoftwareKDE
QtCreatorisacompleteintegrateddevelopmentenvironment(IDE)forcreatingapplicationswiththeQtapplicationframework.Qtisdesignedfordevelopingapplicationsanduserinterfacesonceanddeployingthemacrossseveraldesktopandmobileoperatingsystems.ThispaperprovidesanintroductiontoQtCreatorandthefeaturesitprovidestoQtdevelopersduringtheapplicationdevelopmentlife-cycle.
IntroductiontoQtCreator
OneofthemajoradvantagesofQtCreatoristhatitallowsateamofdeveloperstoshareaprojectacrossdifferentdevelopmentplatforms(MicrosoftWindows®,MacOSX®,andLinux®)withacommontoolfordevelopmentanddebugging.
ThemaingoalforQtCreatorismeetingthedevelopmentneedsofQtdeveloperswhoarelookingforsimplicity,usability,productivity,extendibilityandopenness,whileaimingtolowerthebarrierofentryfornewcomerstoQt.ThekeyfeaturesofQtCreatorallowthedeveloperstoaccomplishthefollowingtasks:
GetstartedwithQtapplicationdevelopmentquicklyandeasilywithprojectwizards,andquicklyaccessrecentprojectsandsessions.
DesignQtwidget-basedapplicationuserinterfacewiththeintegratededitor,QtDesigner.
DevelopapplicationswiththeadvancedC++codeeditorthatprovidesnewpowerfulfeaturesforcompletingcodesnippets,refactoringcode,andviewingtheoutlineoffiles(thatis,thesymbolhierarchyofafile).
Build,run,anddeployQtprojectsthattargetmultipledesktopandmobileplatforms,suchasMicrosoftWindows,MacOSX,Linux,Symbian,MeeGo,andMaemo.
DebugwiththeGNUandCDBdebuggersusingagraphicaluserinterfacewithincreasedawarenessofQtclassstructures.
Usecodeanalysistoolstocheckformemorymanagementissuesinyourapplications.
DeployapplicationstomobiledevicesandcreateapplicationinstallationpackagesforSymbian,MeeGo,andMaemodevicesthatcanbepublishedintheOviStoreandotherchannels.
Easilyaccessinformationwiththeintegratedcontext-sensitiveQtHelpsystem.
QtCreatorispartofQtQuick,whichallowsdesignersanddeveloperstocreatethekindofintuitive,modern-looking,fluiduserinterfacesthatareincreasinglyusedonmobilephones,mediaplayers,set-topboxesandotherportabledevices.QtCreatorenablescollaborationbetweendesigners
anddevelopers.
SupportedOperatingSystems
QtCreatorinstallationpackagesareavailableforMicrosoftWindows,MacOSX,andLinux.QtCreatorcanberunonotherplatforms,butthatrequiresthecompilationofthepubliclyavailablesourcecode.BuildingandrunningQtCreatorfromsourcecodemayrequireaseparateinstallationofQtonyourcomputer.
WorkingwithQtCreator
WhenyoustartQtCreator,itopenstotheWelcomemode,whereyoucanopentutorialsandexampleprojectsorstarttheprojectwizardtocreateyourownprojects.
QtCreatormeetsitsdesigngoalsofsimplicity,ease-of-use,andproductivitybyrelyingontheconceptofmodes.Theseadapttheuserinterfacetothedifferentapplicationdevelopmenttasksathand.DeveloperscanusethemodeselectororkeyboardshortcutstoswitchtoaQtCreatormode.
Eachmodehasitsownviewthatshowsonlytheinformationrequiredforperformingagiventaskandprovidesonlythemostrelevantfeaturesandfunctionsrelatedtoit.Asaresult,themajorityoftheQtCreatorwindowareaisalwaysdedicatedtoactualapplicationdevelopmenttasks.
CreatingProjects
Tobeabletobuildandrunapplications,QtCreatorneedsthesameinformationasacompilerwouldneed.Thisinformationisspecifiedintheprojectbuildandrunsettings.
Whenthestepshavebeencompleted,QtCreatorautomaticallygeneratestheprojectwithrequiredheaders,sourcefiles,userinterfacedescriptionsandprojectfiles,asdefinedbythewizard.
Notonlydoesthewizardhelpnewusersgetupandrunningquickly,italsoenablesmoreexperienceduserstostreamlinetheirworkflowforthecreationofnewprojects.Theconvenientuserinterfacemakesiteasiertoensurethataprojectbeginswiththecorrectconfigurationanddependencies.
DesigningUserInterface
QtCreatorprovidesafullyintegratedvisualeditor,QtDesigner.QtDesignerisatoolfordesigningandbuildinggraphicaluserinterfacesfromQtwidgets.Userscancomposeandcustomizewidgetsordialogsandtestthoseusingdifferentstylesandresolutions.
WidgetsandformscreatedwithQtDesignerareintegratedseamlesslywithprogrammedcode,usingtheQtsignalsandslotsmechanism,whichletsuserseasilyassignbehaviortographicalelements.AllpropertiessetinQtDesignercanbechangeddynamicallywithinthecode.Furthermore,featuressuchaswidgetpromotionandcustompluginsallowuserstousetheirownwidgetswithQtDesigner.
QtDesignerisusedforeditinguserinterfacefiles.Itpresentsuserswithanintuitivedrag-and-dropinterfaceforcomposingnewuserinterfaces.TheuserinterfacesthataredesignedwithQtDesignerarefullyfunctionalandcanbepreviewedimmediatelytoensurethatthedesignisasintended.Thereisnoneedtorecompiletheentireprojecttotestoutanewdesign.
Coding
Writing,editingandnavigatinginsourcecodearecoretasksinapplicationdevelopment.Therefore,thecodeeditorisoneofthekeycomponentsofQtCreator.ThecodeeditorcanbeusedintheEditmodetowritecode.
Thecodeeditoroffersanumberoffeaturesthathelpdevelopersmaintainreadabilityandcodingstyle:
Syntaxhighlightingforkeywords,symbols,andmacrosinC++files.Inaddition,generichighlightingissupportedforothertypesoffiles.
Codecompletionforelements,properties,idsandcodesnippets.Thisisalsosupportedfordevelopers’ownclassesinthecurrentproject.
Checkingcodesyntaxandmarkingerrors(withwavyunderlininginred)whileediting,makingitunnecessarytousecompilationsimplyasawaytofindtyposandsyntaxerrors.
Auto-indentationforsourcecodelayout.
Theabilitytocollapseandexpandfunctionsinthesourcecode(codefolding).
TheLocatornavigationtoolforquickaccesstofiles,symb