Win8 on Intel Programming CourseModern UI HelloWorld in HTML5/JS
Cédric Andreolliwww.Intel-Software-Academic-Program.com
[email protected] Software
2013-03-20
Modern UI Coding
Technologies availableJavascript/HTML5C#/XAMLC++Visual Basic
Modern UI Coding
What will be coveredJavascript/HTML5The course is based on Visual Studio 2012
LabA detailed lab is available in the ZIP file,with a doc file and sources.
Visual Studio 2012
Modern UI Hello World
VS 2012 New projectFile > New > ProjectSelect “Blank app” and enter an app name (“HelloWorld” ?)
Modern UI Hello World
VS 2012 main window layout“Run” at the top, code at the center,solution explorer on the right
Modern UI Hello World
VS 2012 solution = 1 or more projects
Manifest
Manifest
WhatThe manifest collect informationabout the applicationIt's a XML documentContainsThe application's nameThe application's logoOS supported versionsApplication startup page, …
Manifest
Manifest
Manifest
What to rememberDefines the start page !Place to add new capabilities(webcam, microphone, etc)Information about your applications
Resources
Resources
Why resources ?It’s a very good practice is to avoid putting text strings directly into the code : use a resource file insteadYour app will be easy to maintain and translate
Here’s howCreate a directory named “strings” in your projectCreate a subfolder named “en-US”in the new “strings” folderCreate a new Resources filein the new “en-US” folder
Resources
Resources
Resources
Resources
Start page
Start page
A start page called « default.html »D
Start page
The « default.html » fileHTML5 formatIt's a good practice to associate a HTML filewith a javascript file and a CSS fileThe default.html file is associatedwith js/default.js and css/default.css
Start page
Anatomy of the « default.html » HTML5 file
Start page
Vue and ControllerThe HTML5 is used to design the app window (Vue)It's possible to add texts, buttons, and a lot of other featuresEach element can be associated with handlers written in javascript (Controller)
Start page
Let’s add some elements to the home pageA titleA text input and its associated labelA submit buttonA paragraph area to display some text
File to modifyResources file for user visible readable stringsStart page HTML5 file to add the elementsJavascript file to add the desired behavior
Resources and HTML
Resources : strings/en-US/resources.resjon
HTML5 Start page : default.html
Resources and HTML
StringsStrings are in the resources file, in JSON format, associated with keysKeysKeys are used in the HTML5 file instead of the stringsdata-win-resYou must use the data-win-res attribute in the HTML5, in the tag, or as a span markup
Analysing the Javascript
JavascriptInsert the code for the behavior before “app.start();”
Editing the Javascript
First load resources from Javascript
Editing the Javascript
Then change the onactivated handler
Editing the Javascript
setPromiseWill display the splash screen as long as necessaryWinJS.UI.processAll Will scan the associated HTML documentgetElementById(“send”)Will retrieve the send button in the UIaddEventListenerWill add a listener to the button
Editing the Javascript
Add the handler before app.start()
Launch HelloWorld
Click the Play button
Next steps
Next steps
HelloWorld detailed labWe propose you open the associated lab (doc file) and code HelloWorld yourself.
Plus/Minus appOn top of HelloWorld, you’ll find a slightly more complex example using the same technology, the Plus/Minus app.
License Creative Commons – By 3.0
You are free:• to Share — to copy, distribute and transmit the work • to Remix — to adapt the work • to make commercial use of the work Under the following conditions:• Attribution — You must attribute the work in the manner specified by the author or licensor (but
not in any way that suggests that they endorse you or your use of the work).With the understanding that: • Waiver — Any of the above conditions can be waived if you get permission from the copyright
holder. • Public Domain — Where the work or any of its elements is in the public domain under applicable
law, that status is in no way affected by the license. • Other Rights — In no way are any of the following rights affected by the license:
– Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations; – The author's moral rights; – Rights other persons may have either in the work itself or in how the work is used, such as publicity or
privacy rights. • Notice — For any reuse or distribution, you must make clear to others the license terms of this
work. The best way to do this is with a link to this web page.
http://creativecommons.org/licenses/by/3.0/
Top Related