Coding 4 WP7 Mobile. Sfruttare i feed RSS. Come presentare I dati contenuti in un feed RSS in un App per Winddows Phone 7
|
|
- Aldo Pugliese
- 8 anni fa
- Visualizzazioni
Transcript
1 Coding 4 WP7 Mobile Sfruttare i feed RSS Come presentare I dati contenuti in un feed RSS in un App per Winddows Phone 7 Andrea Temporiti 1/19/2011
2 Intro Con l uscita del SDK (Software Developmet Kit) per Windows Phone 7 finalmente anche gli sviluppatori.net possono sbizzarrirsi nel creare applicazioni mobile che siano accattivanti, simpatiche e utili. Inizia la battaglia alle App del melafonino. In questo articolo voglio condividere alcune idee, spunti e prove che potrebbero essere utili nel creare la vostra prima App per Windows Phone 7. Gli strumenti del mestiere Come prima cosa, naturalmente è necessario disporre di tutto l occorrente per creare la propria App. Se siete sviluppatori.net avrete sicuramente l ultima verisone di Visual Studio (VS2010) sul vostro PC, Altrimeniti seguite quanto segue: Se siete sviluppatori.net e non avete ancora Visual Studio 2010 (INSTALLATE!!!!!!!!!!!!!!!!!!!!) Se siete sviluppatori ma avete sempre pensato che.net non fa per voi: (INSTALLATE Visual Studio 2010!!!) Se siete sviluppate applicazioni per Iphone o Ipad, buttate via X-Code e INSTALLATE VISUAL STUDIO 2010 (Vi serve un PC, non provate ad installare Visual Studio su Snow Leopard perchè anche in emulazione va bene). Se preferite le discipline umanistiche alla teconologia: Chiedetevi perchè avete scaricato questo documento, quindi INSTALLATE Visual Studio 2010, non si sa mai. Come avrete capito, per sviluppare una App per il vostro Windowsfonino dovete avere l ambiente di sviluppo. Naturalmente vi serve anche l SDK, o meglio Windows Phone Developer Toolkit e un altro pò di software a supporto. Per semplificarvi la vita, Microsoft ha creato un pacchettino che installa tutto il necessario, compreso Bland, che serve per dare un bel look and feel alla vostra interfaccia grafica. Per gli amanti del softwrae Free, quì trovate la versione gratuita del pacchetto cumulativo: Andate sulla sezione Download the free tools e premete su Install Now. L idea Se in questo momento state installando I tools avete il tempo per mettere da parte il computer per un attimo e iniziare a pensare alla vostra app. Siccome gli Hello World sono belli ma assolutamente inutili, vediamo di costruire qualcosa di un pò più gratificante. L idea per la nostra app in realtà non è molto originale, creeremo una applicazione in grado di fornirci informazioni e previsioni Meteo.
3 Recuperare i dati da visualizzare Il nostro dispositivo Windows Phone, come altri SmartPhone, dispone di sensori e telecamere, in grado di fornirci molte informazioni utili per creare le nostre applicazioni. Tuttavia non ha al suo interno dispositivi in grado di fornirci informazioni meteo o semplicemente la temperatura ambientale. E necessario quindi trovare un altro modo per recuperare i dati che ci servono. Come prima strada proviamo a collegare il nostro Windows Phone ad una statuetta metereopatica, di quelle che cambiano colore in funzione della pressione ambientale... purtroppo niente porta USB o Bluetooth sulla statuetta. Cerchiamo qualcosa di più tecnologico, radiosveglia con stazione meteo incorporata. Bella, costosa ma difficilmente interfacciabile al nosto Windows Phone. Soprattutto diventa un po complicato portarsela dietro... scartata. Ci serve qualcosa di più pratico...girando su internet vi sarà sicuaremnte capitato di imbattervi nei feed RSS. Per chi non sapesse che cosè un feed RSS: RSS (acronimo di RDF Site Summary ed anche di Really Simple Syndication) è uno dei più popolari formati per la distribuzione di contenuti Web; è basato su XML, da cui ha ereditato la semplicità, l'estensibilità e la flessibilità. L'applicazione principale per cui è noto sono i feed RSS, che permettono di essere aggiornati su nuovi articoli o commenti pubblicati nei siti di interesse senza doverli visitare manualmente uno a uno. RSS definisce una struttura adatta a contenere un insieme di notizie, ciascuna delle quali sarà composta da vari campi (nome autore, titolo, testo, riassunto,...). Quando si pubblicano delle notizie in formato RSS, la struttura viene aggiornata con i nuovi dati; visto che il formato è predefinito, un qualunque lettore RSS potrà presentare in una maniera omogenea notizie provenienti dalle fonti più diverse. Wikipedia: Dobbiamo cercare un feed RSS che faccia al caso nostro, da cui possiamo recuperare i dati meteo della nostra città. Finalmente dopo un po di ricerche trovo quello che cercavamo. Yahoo espone i propri dati metereologici via feed RSS e ci fornisce anche una chiara gudia sui come recuperarli programmaticamente. Dopo una rapida letta alla documentazione capiamo che questo feed fa al caso nostro, per fare una prova mettiamo nel browser l indirizzo di test: e riceviamo in output l XML promesso, che ci descrive la condizione del tempo a Sunnville. Siccome probabilmente non ci interessa sapre che tempo fa a Sunnville ma vorremmo avere le previsioni delle nostre città, dobbiamo trovare il nostro WOEID (Where On Earth ID) Il WOEID è un codice che identifica una città ben precisa e va passato al parametro w nella query string.
4 Come avrete capito Yahoo! ha anche un API che ci permette di interrogare il database geografico per trovare la città in base al nome. Da uno sguardo alla documentazione risulta chiaro che dobbiamo interrogare la tabelal geo.places: select * from geo.places where text = Roma In realtà l operatore = funziona da like. Piccola difficoltà, la query sopra va passata in query string all API query.yahooapis.com/v1/public/ e quindi bisogna prima passare la query inun Encoder HTML: select+*+from+geo.places+where+text%3d%22roma%22 Ora possiamo costrutire la nostra url di richiesta: rmat=xml Come risposa riceviamo un enorme XML che contiene tutte le città conosciute contenenti Roma o similari, fortunatamente il primo nodo place restituito è proprio quello desiderato, come si capisce dai nodi evidenziati. Tra i primi nodi figlio del nodo place troviamo quello che stavamo cercando ovvero il WOEID di Roma (721943). <?xml version="1.0" encoding="utf-8"?> <query xmlns:yahoo=" yahoo:count="10" yahoo:created=" t20:45:05z" yahoo:lang="en-us"> <results> <place xmlns=" xml:lang="en-us" yahoo:uri=" <woeid>721943</woeid> <placetypename code="7">town</placetypename> <name>rome</name> <country code="it" type="country">italy</country> <admin1 code="" type="region">lazio</admin1> <admin2 code="it-rm" type="province">rome</admin2> <admin3/> <locality1 type="town">rome</locality1> <locality2/> <postal/> <centroid> <latitude> </latitude> <longitude> </longitude> </centroid> <boundingbox> <southwest> <latitude> </latitude> <longitude> </longitude> </southwest> <northeast> <latitude> </latitude> <longitude> </longitude> </northeast> </boundingbox> <arearank>5</arearank> <poprank>13</poprank> </place> <place xmlns=" xml:lang="en-us"
5 yahoo:uri=" <woeid> </woeid> <placetypename code="7">town</placetypename> <name>roma</name> <country code="us" type="country">united States</country> <admin1 code="us-tx" type="state">texas</admin1> <admin2 code="" type="county">starr</admin2> <admin3/> <locality1 type="town">roma</locality1> <locality2/> <postal type="zip Code">78584</postal> <centroid> <latitude> </latitude> <longitude> </longitude> </centroid> <boundingbox> <southwest> <latitude> </latitude> <longitude> </longitude> </southwest> <northeast> <latitude> </latitude> <longitude> </longitude> </northeast> </boundingbox> <arearank>3</arearank> <poprank>1</poprank> </place>... </results> </query> Ora vediamo cosa succede se modifichiamo il parametro passato alla url di Yahoo! Weather: Ecco finalmente comparire le informazioni che ci interessano, ovvero il meteo di Roma: <?xml version="1.0" encoding="utf-8" standalone="yes"?> <rss version="2.0" xmlns:yweather=" xmlns:geo=" <channel> <title>yahoo! Weather - Rome, IT</title> <link> IT/* st/itxx0067_f.html</link> <description>yahoo! Weather for Rome, IT</description> <language>en-us</language> <lastbuilddate>wed, 19 Jan :14 pm CET</lastBuildDate> <ttl>60</ttl> <yweather:location city="rome" region="lz" country="italy"/> <yweather:units temperature="f" distance="mi" pressure="in" speed="mph"/> <yweather:wind chill="48" direction="150" speed="3" /> <yweather:atmosphere humidity="87" visibility="3.73" pressure="30.06" rising="0" /> <yweather:astronomy sunrise="7:30 am" sunset="5:06 pm"/> <image> <title>yahoo! Weather</title> <width>142</width> <height>18</height> <link> <url>
6 </image> <item> <title>conditions for Rome, IT at 9:14 pm CET</title> <geo:lat>41.9</geo:lat> <geo:long>12.5</geo:long> <link> IT/* st/itxx0067_f.html</link> <pubdate>wed, 19 Jan :14 pm CET</pubDate> <yweather:condition text="mostly Cloudy" code="27" temp="48" date="wed, 19 Jan :14 pm CET" /> <description> <![CDATA[ <img src=" /> <b>current Conditions:</b><br /> Mostly Cloudy, 48 F<BR /> <BR /><b>forecast:</b><br /> Wed - Light Rain Late. High: 57 Low: 46<br /> Thu - AM Light Rain. High: 52 Low: 39<br /> <br /> <a href=" IT/* st/itxx0067_f.html">full Forecast at Yahoo! Weather</a><BR/><BR/> (provided by <a href=" >The Weather Channel</a>)<br/> ]]> </description> <yweather:forecast day="wed" date="19 Jan 2011" low="46" high="57" text="light Rain Late" code="11" /> <yweather:forecast day="thu" date="20 Jan 2011" low="39" high="52" text="am Light Rain" code="11" /> <guid ispermalink="false">itxx0067_2011_01_19_21_14_cet</guid> </item> </channel> </rss> <!-- api4.weather.ch1.yahoo.com compressed/chunked Wed Jan 19 12:44:13 PST > Notare che le unità di misura sono quelle americane. Per trasformare le letture nel sistema MKSC basta passare l ulteriore parametro u (unit) in query string impostandolo al valore c : Prepariamo la soluzione Bene, ora che abbiamo i nostri dati, possiamo iniziare a presentarli. Come prima cosa apriamo Visual Studio 2010 e creiamo un progetto : File->New->Project
7 Scegliamo come template Visual C#->Silverlight For Windows Phone, quindi Selezioniamo Windows Phone Pivot Application. Cambiamo il nome in WP7Meteo e premiamo OK e otteniamo lo scheletro del nostro progetto. Provate a mandare in esecuzione lo scheletro della vostra applicazione, vi si aprirà un emulatore che vi permette di visualizzare due pagine (first e second).
8 Per passare da una pagina all altra posizionate il puntatore del moude al centro della pagina e tenedo simulate un operazione di drag n drop verso sinsitra o destra. (simula lo schermo touch). Tornate in design mode, avrete sicuramente notato che l interfaccia grafica è definita da un fiel XAML (mainpage.xaml) che contiene la definizione della pagina che stiamo visualizzando. <Grid x:name="layoutroot" Background="Transparent"> <!--Pivot Control--> <controls:pivot Title="MY APPLICATION"> <!--Pivot item one--> <controls:pivotitem Header="first"> <!--Double line list with text wrapping--> <ListBox x:name="firstlistbox" Margin="0,0,-12,0" ItemsSource="Binding Items"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Margin="0,0,0,17" Width="432"> <TextBlock Text="Binding LineOne" TextWrapping="Wrap" Style="StaticResource PhoneTextExtraLargeStyle"/> <TextBlock Text="Binding LineTwo" TextWrapping="Wrap" Margin="12,-6,12,0" Style="StaticResource PhoneTextSubtleStyle"/> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </controls:pivotitem> <!--Pivot item two--> <controls:pivotitem Header="second"> <!--Triple line list no text wrapping--> <ListBox x:name="secondlistbox" Margin="0,0,-12,0" ItemsSource="Binding Items"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel Margin="0,0,0,17"> <TextBlock Text="Binding LineOne" TextWrapping="NoWrap" Margin="12,0,0,0" Style="StaticResource PhoneTextExtraLargeStyle"/> <TextBlock Text="Binding LineThree" TextWrapping="NoWrap" Margin="12,- 6,0,0" Style="StaticResource PhoneTextSubtleStyle"/> </StackPanel> </DataTemplate> </ListBox.ItemTemplate>
9 </ListBox> </controls:pivotitem> </controls:pivot> </Grid> Apriamo la soluzione con Blend: Sulla spalla sinistra un albero riporta i componenti della nostra interfaccia:
10 Recupero dei dati da codice Ora che abbiamo creato il progetto è necessario scrivere un po di codice per leggere i dati XML dal feed e caricarli all interno di una classe C#. Normalmente C# permette di leggere i feed con un apposito binding WCF chiamato Sindacation. Sfortunatamente il framework.net fornito con WP non dispone di quelle classi, quindi dobbiamo trovare un work around. Come prima cosa dobiamo ricavare uno schema compatibile con l XML ricavato in output dalla chiamata. Per fare questo salviamo come c:\forecastrss.xml l XML ricavato mettendo nel browser la url: Usiamo quindi l utility XSD.exe per generare l XSD relativo. Xsd.exe è un utility da riga di comando disponibile da prompt dei comandi di Visual Studio Start->All Programs->Microsoft visual Studio 2010-> Visual Studio Tools-> Visual Studio Command Prompt (2010) Qundi digitiamo il commando : xsd c:\forecastrss.xml /outputdir:c:\
11 Se controllimao la directory c:\ troviamo in realtà 3 file c:\forecastrss.xsd c:\forecastrss_app1.xsd e c:\forecastrss_app2.xsd. Questo perchè il tool ha generato un file XSD per ogni namespace trovato nel file XML di origne.ora usiamo nuovamente il tool XSD per generare le classi C# Il fatto di avere lo schema diviso in tre classi distinte complica un po il successivo passo. Dobbiamo fornire a XSD tutti e tre gli schema files. (Attenzione nel help del comando XSD questa procedura non è documentata ma funziona, provare per credere). Digitate da riga di comando: xsd c:\forecastrss.xsd c: forecastrss_app1.xsd c:/forecastrss_app2.xsd /classes /l:cs /outputdir:c:\
12 Il file cs con le classi veine generato come forecastrss_app2.cs. Tornate al vostro progetto, create una cartella chiamata YahooModel e importate al suo interno il file CS generato dopo averlo rinominato in forecastrss.cs. Importate anche i file XSD. Apriamo la classe e eliminamo tutti gli attributi decorativi: [System.SerializableAttribute()]
13 e [System.ComponentModel.DesignerCategoryAttribute("code")] Modifichiamo la proprietà forecast dell oggetto channelitem in modo da farla diventare un array: /// <remarks/> [System.Xml.Serialization.XmlElementAttribute(Namespace=" /1.0")] public forecast[] forecast get return this.forecastfield; set this.forecastfield = value; Fate la stessa coda con la variabile relativa: private forecast[] forecastfield; Ora che abbiamo la classe, dobbiamo scrivere il codice necessario per recuperare i dati da Yahoo tramite una post HTTP. Prima di scrivere il codice diamo un occhiata al pattern previsto dallo scheletro del progetto. Chi ha dimestichezza con WPF e Silverlight avrà già individuato la cartella ViewModel. Anche in questo caso utilizzeremo l ormai noto pattern Model View ViewModel per separare la vista dal modello. Nella cartella ViewModel troviamo già il file MainPageViewModel.cs, apriamolo e svuotiamolo dei contenuti a meno dell implementazione dell interfaccia IPropertyChanged, che risulterà utile: namespace WP7Meteo public class MainViewModel : INotifyPropertyChanged public MainViewModel() public event PropertyChangedEventHandler PropertyChanged; private void NotifyPropertyChanged(String propertyname) PropertyChangedEventHandler handler = PropertyChanged; if (null!= handler) handler(this, new PropertyChangedEventArgs(propertyName));
14 Aggiungiamo ora la reference all assembly Syste.Xml.Serialization, che contiene la classe XmlSerializer. Utilizzeremo la classe per deserializzare l XML ricevuto da Yahoo come risposta alla query. Aggiungiamo nella sezione using il namespace System.Windows.Threading using System.Windows.Threading; using System.Net; using System.Xml.Serialization; Dichiarimao le due variabili di classe e la proprietà: public Dispatcher Dispatcher get; set; private rss forecast; public bool IsDataLoaded set; get; Aggiungiamo la proprietà Forecast di tipo rss: public rss Forecast get return forecast; set if (value!= forecast) forecast = value; Dispatcher.BeginInvoke(delegate() NotifyPropertyChanged("Forecast"); ); Nel costruttore impostiamo IsDataLoaded = false; La classe ViewModel ora risulterà come segue: using System.Diagnostics; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; using System.Collections.ObjectModel; using System.Windows.Threading; using System.Net; using System.Xml.Serialization; namespace WP7Meteo
15 public class MainViewModel : INotifyPropertyChanged public Dispatcher Dispatcher get; set; private rss forecast; public bool IsDataLoaded set; get; public MainViewModel() IsDataLoaded = false; public rss Forecast get return forecast; set if (value!= forecast) forecast = value; Dispatcher.BeginInvoke(delegate() NotifyPropertyChanged("Forecast"); ); public event PropertyChangedEventHandler PropertyChanged; private void NotifyPropertyChanged(String propertyname) PropertyChangedEventHandler handler = PropertyChanged; if (null!= handler) handler(this, new PropertyChangedEventArgs(propertyName)); A questo punto aggiungiamo il metodo loadforecast e il metodo c_operreadcompleted: private void loadforecast() WebClient c = new WebClient(); string uripath c.openreadcompleted += new OpenReadCompletedEventHandler(c_OpenReadCompleted); c.openreadasync(new Uri(uriPath)); void c_openreadcompleted(object sender, OpenReadCompletedEventArgs e)
16 XmlSerializer s = new XmlSerializer(typeof(rss)); rss q = (rss)s.deserialize(e.result); if (e.error == null) Forecast = q; L implementazione del metodo effettua la richiesta web tramite la classe WebClient. E importante non bloccare l interfaccia, per questo motivo la classe WebClient (per mobile) non implementa il metodo sincrono di request. Sull evento di callback deserializziamo quindi la risposta, se positiva, e l assegnamo alla variabile Forecast. Aggiungete infine il emtodo LoadData(): public void LoadData(Dispatcher dispatcher) this.dispatcher = dispatcher; loadforecast(); Aprire la classe App.xaml.cs e rimuovere il codice contenuto nel metodo di attivazione: // Code to execute when the application is activated (brought to foreground) // This code will not execute when the application is first launched private void Application_Activated(object sender, ActivatedEventArgs e) Aprire MainPage.xaml.cs e modificare l implementaione del gestore evento MainPage_OnLoad: // Load data for the ViewModel Items private void MainPage_Loaded(object sender, RoutedEventArgs e) if (!App.ViewModel.IsDataLoaded) App.ViewModel.LoadData(this.Dispatcher); Creazione dell interfaccia Torniamo ora sull interfaccia MainPage.XAML e svuotiamo la parte di XAML contenuta all interno dei due pivot Item. Rinominamoli in Current e Forecast, rinominamo MY APPLICATION in YAHOO! WEATHER FORECAST for WP7
17 All interno del PivotItem Current vogliamo ora creare l interfaccia per la visualizzazione dello stato meteo attuale. Aggiungiamo una griglia inserendo un nodo Grid all interno del primo Pivot Item: <Grid x:name="layoutroot" Background="Transparent"> <!--Pivot Control--> <controls:pivot Title="MY APPLICATION"> <!--Pivot item one--> <controls:pivotitem Header="Current"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="80" /> <RowDefinition Height="200" /> <RowDefinition Height="80" /> <RowDefinition Height="80" /> <RowDefinition Height="40" /> <RowDefinition Height="40" /> </Grid.RowDefinitions> </Grid> </controls:pivotitem> <controls:pivotitem Header="Forecast"> </controls:pivotitem> </controls:pivot> </Grid> In questo modo abbiamo predisposto una griglia con 6 righe e una colonna. Visual Studio ci mostra la griglia sul designer:
18 Aggiungiamo nello XAML della griglia le seguenti 3 righe: <TextBlock x:name="actualtitle" Text="Situazione meteo Roma" Grid.Row="0" FontSize="32" VerticalAlignment="Center" /> <TextBlock Grid.Row="4" HorizontalAlignment="Center" Text="Updated at" VerticalAlignment="Center" />
19 <TextBlock Grid.Row="5" HorizontalAlignment="Center" Text="Binding Forecast.channel[0].item[0].condition.date, Mode=OneWay,UpdateSourceTrigger=Default" VerticalAlignment="Center" /> Poichè sono stati impostati I parametric Gri.Row di ogni TextBlock, gli elementi grafici verrano visualizzati rispettivamente nella prima, nella quinta e nella sesta riga. Mentre i primi due blcchi testo hanno un contenuto statico, l ultimo TextBlock recupera le informazioni da visualizzare dall oggetto Forecast. (Ricordate la proprietà caricata leggendo i dati dalla risposta delle API Yahoo all interno del viewmodel). Si noti che il binding è definito sulla data di aggiornamento, facilemnte individuabile controllando l XML recueprato inserendo la richiesta nel browser. In evidenza nell riquadro seguente: <?xml version="1.0" encoding="utf-8" standalone="yes"?> <rss version="2.0" xmlns:yweather=" xmlns:geo=" <channel> <title>yahoo! Weather - Rome, IT</title> <link> IT/* st/itxx0067_f.html</link> <description>yahoo! Weather for Rome, IT</description> <language>en-us</language> <lastbuilddate>wed, 19 Jan :14 pm CET</lastBuildDate> <ttl>60</ttl> <yweather:location city="rome" region="lz" country="italy"/> <yweather:units temperature="f" distance="mi" pressure="in" speed="mph"/> <yweather:wind chill="48" direction="150" speed="3" /> <yweather:atmosphere humidity="87" visibility="3.73" pressure="30.06" rising="0" /> <yweather:astronomy sunrise="7:30 am" sunset="5:06 pm"/> <image> <title>yahoo! Weather</title> <width>142</width> <height>18</height> <link> <url> </image> <item> <title>conditions for Rome, IT at 9:14 pm CET</title> <geo:lat>41.9</geo:lat> <geo:long>12.5</geo:long> <link> IT/* st/itxx0067_f.html</link> <pubdate>wed, 19 Jan :14 pm CET</pubDate> <yweather:condition text="mostly Cloudy" code="27" temp="48" date="wed, 19 Jan :14 pm CET" /> <description> <![CDATA[ <img src=" /> <b>current Conditions:</b><br /> Mostly Cloudy, 48 F<BR /> <BR /><b>forecast:</b><br /> Wed - Light Rain Late. High: 57 Low: 46<br /> Thu - AM Light Rain. High: 52 Low: 39<br /> <br /> <a
20 href=" IT/* st/itxx0067_f.html">full Forecast at Yahoo! Weather</a><BR/><BR/> (provided by <a href=" >The Weather Channel</a>)<br/> ]]> </description> <yweather:forecast day="wed" date="19 Jan 2011" low="46" high="57" text="light Rain Late" code="11" /> <yweather:forecast day="thu" date="20 Jan 2011" low="39" high="52" text="am Light Rain" code="11" /> <guid ispermalink="false">itxx0067_2011_01_19_21_14_cet</guid> </item> </channel> </rss> Proviamo ad avviare l applicazione premendo F5, noteremo che la data comparirà al centro in basso sull interfaccia dell emulatore: Ora vogliamo aggiungere le informazioni sulla temperatura attuale, massima e minima contenute nella classe Forecast.
21 Aggiungiamo quindi i seguenti oggetti all interno della griglia: <TextBlock Grid.Row="2" Text="Binding Forecast.channel[0].item[0].condition.text, Mode=OneWay,UpdateSourceTrigger=Default" FontSize="28" HorizontalAlignment="Center" VerticalAlignment="Center"/> <Grid Grid.Row="3"> <Grid.ColumnDefinitions> <ColumnDefinition Width="50*" /> <ColumnDefinition Width="25*" /> <ColumnDefinition Width="25*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="50*" /> <RowDefinition Height="50*" /> </Grid.RowDefinitions> <TextBlock Grid.Row="0" Grid.RowSpan="2" Grid.Column="0" HorizontalAlignment="Center" Text="Binding Forecast.channel[0].item[0].condition.temp, Mode=OneWay,UpdateSourceTrigger=Default" VerticalAlignment="Center" FontSize="50" /> <TextBlock Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left" Text="High" VerticalAlignment="Center" FontSize="24" Margin="10,0,10,0" /> <TextBlock Grid.Row="1" Grid.Column="2" HorizontalAlignment="Left" Text="Binding Forecast.channel[0].item[0].forecast[0].high, Mode=OneWay,UpdateSourceTrigger=Default" VerticalAlignment="Center" FontSize="24" /> <TextBlock Grid.Row="0" Grid.Column="1" HorizontalAlignment="Left" Text="Low" VerticalAlignment="Center" FontSize="24" Margin="10,0,10,0" /> <TextBlock Grid.Row="0" Grid.Column="2" HorizontalAlignment="Left" Text="Binding Forecast.channel[0].item[0].forecast[0].low, Mode=OneWay,UpdateSourceTrigger=Default" VerticalAlignment="Center" FontSize="24" /> </Grid> Il codice XAML assomiglierà a quanto descritto di seguito:
22 Come possiamo notare, abbiamo aggiunto una ulteriore girglia all interno della griglia principale in modo da poter disporre gli elementi grafici interni (High e Low) a destra del valore attuale. Il funzionamento è simile a quello delle dichiarative tabelle HTML come dimostra l uso degli attributi RowSpan e ColumnSpan sugli elementi contenuti.
23 Utilizzo dei converter Ora che abbiamo gran parte dei dati visualizzati, pensiamo è necessario abbellire l interfaccia: Mettiamo l unità di misura per i gradi Inseriamo un immagine che varia in funzione dello stato meteo (sole, pioggia, nebbia ecc.) Per inserire l unità di misura, basterebbe modificare la classe Forecast. Per scopi didattici, preferiamo creare un oggetto Converter. Ovvero una classe in grado di convertire un dato in ingreso in un nuovo tipo in uscita o semplicemente variarne il formato. I converter sono ampiamenti utilizzati nel pattern Model View-ViewModel perchè permettono di definire come interpretare una proprietà di un oggeto direttamente all interno del file XAML nella sezione Binding. Nel nostro caso utilizzeremo due converter :
24 Il primo converter inserirà semplicemente l unità di misura ai dati di temperatura prima che questi vengano presentati Il secondo converter dovrà individuare l immagine da sivualizzare analizzando il valore dell elemento code (intero tra 0 e 47) del nodo forecst*0+.condition. Creiamo una nuova cartella denominata Converters. Creiamo una nuova classe denominata TemperatureConverter che implementa l interfaccia System.Windows.Data.IValueConverter: using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using System.Windows.Data; namespace WP7Meteo.Converters public class TemperatureConverter : IValueConverter #region IValueConverter Members public object Convert(object value, Type targettype, object parameter, System.Globalization.CultureInfo culture) if (value!= null) return String.Format("0 C", value); else return null; public object ConvertBack(object value, Type targettype, object parameter, System.Globalization.CultureInfo culture) return null; #endregion Creiamo una nuova classe che funga da convertitore di immagini. Per il momento ipotiziamo di avere le immagini pronte in formato.png in una cartella denominata Images all intero del progetto. Più avanti vedremo come prelevare le immagini dal sito di Yahoo!: using System; using System.Net; using System.Windows;
25 using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using System.Windows.Media.Imaging; using System.Globalization; using System.Windows.Data; namespace WP7Meteo.Converters public class WeatherCodeToImageConverter:IValueConverter public object Convert(object value, Type targettype, object parameter, CultureInfo culture) string code = value as string; int integercode = int.parse(code); BitmapImage image = new BitmapImage(new Uri(String.Format(@"/WP7Meteo;component/Images/0.png", integercode), UriKind.Relative)); return image; public object ConvertBack(object value, Type targettype, object parameter, CultureInfo culture) return null; Aggiungiamo i converter nella pagina MainPage.xaml subito sotto al nodo Phone dell applicazione. Stando attenti ad aggiungere anche il namespace clr: <phone:phoneapplicationpage x:class="wp7meteo.mainpage" xmlns=" xmlns:x=" xmlns:phone="clr-namespace:microsoft.phone.controls;assembly=microsoft.phone" xmlns:shell="clr-namespace:microsoft.phone.shell;assembly=microsoft.phone" xmlns:controls="clrnamespace:microsoft.phone.controls;assembly=microsoft.phone.controls" xmlns:d=" xmlns:mc=" mc:ignorable="d" d:designwidth="480" d:designheight="768" d:datacontext="d:designdata SampleData/MainViewModelSampleData.xaml" FontFamily="StaticResource PhoneFontFamilyNormal" FontSize="StaticResource PhoneFontSizeNormal" Foreground="StaticResource PhoneForegroundBrush" SupportedOrientations="Portrait" Orientation="Portrait" shell:systemtray.isvisible="true" xmlns:my="clr-namespace:wp7meteo.converters"> <phone:phoneapplicationpage.resources> <my:weathercodetoimageconverter x:key="weathercodetoimageconverter1" />
26 <my:temperatureconverter x:key="temperatureconverter1" /> </phone:phoneapplicationpage.resources> Ora inseriamo i converter nei binding degli elelemnti della griglia di presentazione dati e aggiungiamo anche l immagine, che per il momento non comparirà per mancanza dei file png. Riporto tutto il PivotItem per completezza: <controls:pivotitem Header="Current"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="80" /> <RowDefinition Height="200" /> <RowDefinition Height="80" /> <RowDefinition Height="80" /> <RowDefinition Height="40" /> <RowDefinition Height="40" /> </Grid.RowDefinitions> <TextBlock x:name="actualtitle" Text="Situazione meteo Roma" Grid.Row="0" FontSize="32" VerticalAlignment="Center" /> <Image Source="Binding Mode=OneWay, UpdateSourceTrigger=Default, Path=Forecast.channel[0].item[0].condition.code, Converter=StaticResource WeatherCodeToImageConverter1" Grid.Row="1" RenderTransformOrigin="0.5,0.5" HorizontalAlignment="Center" VerticalAlignment="Center" /> <TextBlock Text="Binding Forecast.channel[0].item[0].condition.text, Mode=OneWay,UpdateSourceTrigger=Default" Grid.Row="2" FontSize="28" HorizontalAlignment="Center" VerticalAlignment="Center"/> <Grid Grid.Row="3"> <Grid.ColumnDefinitions> <ColumnDefinition Width="50*" /> <ColumnDefinition Width="25*" /> <ColumnDefinition Width="25*" /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="50*" /> <RowDefinition Height="50*" /> </Grid.RowDefinitions> <TextBlock Grid.Row="0" Grid.RowSpan="2" Grid.Column="0" HorizontalAlignment="Center" Text="Binding Forecast.channel[0].item[0].condition.temp, Mode=OneWay,UpdateSourceTrigger=Default, Converter=StaticResource TemperatureConverter1" VerticalAlignment="Center" FontSize="50" /> <TextBlock Grid.Row="1" Grid.Column="1" HorizontalAlignment="Left" Text="High" VerticalAlignment="Center" FontSize="24" Margin="10,0,10,0" /> <TextBlock Grid.Row="1" Grid.Column="2" HorizontalAlignment="Left" Text="Binding Forecast.channel[0].item[0].forecast[0].high, Mode=OneWay,UpdateSourceTrigger=Default, Converter=StaticResource TemperatureConverter1" VerticalAlignment="Center" FontSize="24" /> <TextBlock Grid.Row="0" Grid.Column="1" HorizontalAlignment="Left" Text="Low" VerticalAlignment="Center" FontSize="24" Margin="10,0,10,0" /> <TextBlock Grid.Row="0" Grid.Column="2" HorizontalAlignment="Left" Text="Binding Forecast.channel[0].item[0].forecast[0].low, Mode=OneWay,UpdateSourceTrigger=Default, Converter=StaticResource TemperatureConverter1" VerticalAlignment="Center" FontSize="24" /> </Grid> <TextBlock Grid.Row="4" HorizontalAlignment="Center" Text="Updated at" VerticalAlignment="Center" /> <TextBlock Grid.Row="5" HorizontalAlignment="Center" Text="Binding Forecast.channel[0].item[0].condition.date, Mode=OneWay,UpdateSourceTrigger=Default" VerticalAlignment="Center" /> </Grid> </controls:pivotitem>
27 Ora preleviamo le immagini da yahoo. Andaimo sul portale e vediamo se yahoo ha delle imagini da fornire alla nostra app di prova.
28 La pagina visualizzata riporta l icona Tramite il Tool dev di Internet Explore punto la url dell icona: L icona si trova qui: Dalla documentazione delle API sappiamo che i codici vanno da 0 a 48, quindi presupponiamo che ci siano 49 png da scaricare e includere nella nostra App. Piuttosto che scaricarle manualmente, scriviamo una piccola applicazione console in un progetto console a parte e inserimao il seguente codice nel main. Fate attenzione ad predisporre la cartella di destinazione. static void Main(string[] args) WebClient c = new WebClient(); for (int i = 0; i <= 48; i++)
29 using (System.IO.FileStream fs = System.IO.File.OpenWrite(@"C:\Pictures\WeatherYH\"+i.ToString()+".png")) using (System.IO.Stream s = c.openread(" + i.tostring() + "n.png")) s.copyto(fs); fs.flush(); fs.close(); Eseguitelo e troverete tutte e 49 le immagini nella cartella che avete prevetivamente creato. Ora inseritele nel progetto sotto la cartella Images, ricompilate e avviate l applicaizone sull emulatore. Dovreste avere il seguente risultato.
30
Servizio Feed RSS del sito CNIT
Servizio Feed RSS del sito CNIT Informiamo tutti gli utenti CNIT che è possibile sincronizzare i propri Reader (RSS) per essere aggiornati in tempo reale sulle nuove pubblicazioni di articoli postati sul
DettagliNUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT.
NUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT. Con l utilizzo delle procedure di iscrizione on line la società organizzatrice ha a disposizione tutti
Dettaglitommaso.iacomino@gmail.com INTERNET EXPLORER Guida introduttiva CAPITOLO 1 Fig. 1
INTERNET EXPLORER Guida introduttiva CAPITOLO 1 Fig. 1 IMPORTANTE: forse non visualizzate questa barra, se così fosse usiamo questa procedura: posizioniamo il cursore sulla parte vuota tasto destro del
DettagliOffice 2007 Lezione 02. Le operazioni più
Le operazioni più comuni Le operazioni più comuni Personalizzare l interfaccia Creare un nuovo file Ieri ci siamo occupati di descrivere l interfaccia del nuovo Office, ma non abbiamo ancora spiegato come
DettagliVisual basic base Lezione 01. L'ambiente di sviluppo
L'ambiente di sviluppo L'ambiente di sviluppo Visual basic è un linguaggio di programmazione Microsoft. In questo corso prenderemo in considerazione, l'ultima versione. net di questo linguaggio. Microsoft
DettagliInnanzitutto andiamo sul sito http://www.dropbox.com/ ed eseguiamo il download del programma cliccando su Download Dropbox.
Oggi parlerò di qualcosa che ha a che fare relativamente con la tecnica fotografica, ma che ci può dare una mano nella gestione dei nostri archivi digitali, soprattutto nel rapporto professionale con altre
DettagliICARO Terminal Server per Aprile
ICARO Terminal Server per Aprile Icaro è un software aggiuntivo per Aprile (gestionale per centri estetici e parrucchieri) con funzionalità di terminal server: gira sullo stesso pc dove è installato il
DettagliIRSplit. Istruzioni d uso 07/10-01 PC
3456 IRSplit Istruzioni d uso 07/10-01 PC 2 IRSplit Istruzioni d uso Indice 1. Requisiti Hardware e Software 4 1.1 Requisiti Hardware 4 1.2 Requisiti Software 4 2. Installazione 4 3. Concetti fondamentali
DettagliInstallazione e Configurazione della strumentazione necessaria. Antonio Gallo info@laboratoriolibero.com
Installazione e Configurazione della strumentazione necessaria Antonio Gallo info@laboratoriolibero.com Installazione e Configurazione della strumentazione necessaria Programmi accessori per poter sviluppare
DettagliAppunti di Informatica www.mimmocorrado.it 1
Installare Java Il programma può essere scaricato dal seguente indirizzo: http://www.java.com/it/download/windows_ie.jsp?locale=it&host=www.java.com Per installare la JDK è necessario: 1. scaricare il
DettagliCapitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
DettagliGuida all uso di Java Diagrammi ER
Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con
DettagliATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE
ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE PREMESSA La presente guida è da considerarsi come aiuto per l utente per l installazione e configurazione di Atollo Backup. La guida non vuole approfondire
DettagliModulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...
Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...
DettagliMODULO 5 ACCESS Basi di dati. Lezione 4
MODULO 5 ACCESS Basi di dati Lezione 4 ARGOMENTI Lezione 4 Filtrare i dati Esempio 1 Query Cos è Creare Query in visualizza struttura Criteri di ricerca Esempio 2 Esempio 3 Esempio 4 Creare Query in creazione
Dettagli1. Il Client Skype for Business
1. Il Client Skype for Business 2. Configurare una Periferica Audio 3. Personalizzare una Periferica Audio 4. Gestire gli Stati di Presenza 5. Tabella Stati di Presenza 6. Iniziare una Chiamata 7. Iniziare
DettagliDopo aver installato WSFTP.le, alla prima schermata quando lo apriamo vedremo questo.
Dopo aver installato WSFTP.le, alla prima schermata quando lo apriamo vedremo questo. clicchiamo su Continue nella finestra successiva, spuntiamo la voce Other e clicchiamo su Next Nella terza schermata
DettagliGuida informatica per l associazione #IDEA
Guida informatica per l associazione #IDEA Questa guida vi spiegherà come utilizzare al meglio gli strumenti informatici che utilizza l associazione #IDEA in modo da facilitare il coordinamento con tutti
DettagliOffice 2007 Lezione 08
Word: gli stili veloci e i temi Da questa lezione, iniziamo ad occuparci delle innovazioni che riguardano specificamente Word. Cominceremo parlando di stili e temi. Nella filosofia di questo nuovo Word,
DettagliManuale per la configurazione di AziendaSoft in rete
Manuale per la configurazione di AziendaSoft in rete Data del manuale: 7/5/2013 Aggiornamento del manuale: 2.0 del 10/2/2014 Immagini tratte da Windows 7 Versione di AziendaSoft 7 Sommario 1. Premessa...
DettagliDispositivo Firma Digitale
Dispositivo Firma Digitale DFD - Manuale Operativo del Dispositivo per i Tesseramenti Indice Per accertare che il DFD sia funzionante:... 1 Inserimento del DFD... 1 Come controllare i Certificati... 2
DettagliProgrammare in Java. Olga Scotti
Programmare in Java Olga Scotti Linguaggi di programmazione linguaggio macchina assembler linguaggi ad alto livello Linguaggi ad alto livello istruzioni comprensibili linguaggio simile a quello naturale
DettagliPRODUZIONE PAGELLE IN FORMATO PDF
Requisiti minimi: PRODUZIONE, FIRMA E PUBBLICAZIONE DELLA PAGELLA ELETTRONICA CON ALUNNI WINDOWS PRODUZIONE PAGELLE IN FORMATO PDF Argo Alunni Windows aggiornato alla versione più recente. Adobe PDF CREATOR,
DettagliBiblioteca di Cervia NOZIONI BASE DI INFORMATICA
Biblioteca di Cervia NOZIONI BASE DI INFORMATICA NOZIONI DI INFORMATICA Il PC è composto solitamente di tre parti principali: - Il Case, ovvero il contenitore del cuore del computer, da qui si accende
Dettagliper scrivere un articolo da prima pagina! per inviare una newsletter Come si crea Comunicazione Anfaa Edizione 4a.2013
per scrivere un articolo da prima pagina! Quando si vuole inserire un articolo che compaia nel riquadro Ultime notizie della home page, si deve impostare la categoria Ultime notizie, in aggiunta a quella
DettagliINDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.
Gentile Cliente, benvenuto nel Portale on-line dell Elettrica. Attraverso il nostro Portale potrà: consultare la disponibilità dei prodotti nei nostri magazzini, fare ordini, consultare i suoi prezzi personalizzati,
DettagliFile, Modifica, Visualizza, Strumenti, Messaggio
Guida installare account in Outlook Express Introduzione Questa guida riguarda di sicuro uno dei programmi maggiormente usati oggi: il client di posta elettronica. Tutti, ormai, siamo abituati a ricevere
DettagliPROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE
PROGETTO PER LA TRASMISSIONE DOCUMENTI RELATIVI ALL APPROVAZIONE DELLE MANIFESTAZIONI IN FORMA DIGITALE L approvazione di una manifestazione nazionale od internazionale comporta spesso la trasmissione
DettagliISTRUZIONI XCODE. Autore: Luca Florio (luca.florio<at>polimi.it)
ISTRUZIONI XCODE Autore: Luca Florio (luca.floriopolimi.it) XCode è l ambiente di sviluppo fornito da Apple che permette la creazione di applicazioni OSX e iphone. In questa guida vedremo come installarlo
DettagliBackup e Aggiornamenti
Backup e Aggiornamenti Note tecniche Clima Estratto da Primi Passi v. 1.8 14/1/2013 Primi passi pag. 1 Backup e Aggiornamenti Copyright Eskimo srl Tutti i diritti riservati. Il software o parte di esso
DettagliTale attività non è descritta in questa dispensa
Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa
Dettagli11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0
11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0 PAG. 2 DI 38 INDICE 1. PREMESSA 3 2. SCARICO DEL SOFTWARE 4 2.1 AMBIENTE WINDOWS 5 2.2 AMBIENTE MACINTOSH 6 2.3 AMBIENTE
DettagliPer scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli
CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per
DettagliJoomla: Come installarlo e come usarlo. A cura di
Joomla: Come installarlo e come usarlo. A cura di In questa dispensa andremo a vedere come si installa joomla sul noto software xampp e come viene usato per creare siti web dinamici. Tecnol earn Firmato
DettagliConfigurare TPTP in Eclipse e testare un applicazione
Configurare TPTP in Eclipse e testare un applicazione Questa guida concentra la sua attenzione sul tool TPTP (Test & Performance Tools Platform) presente nell ambiente di sviluppo Eclipse. Verrà descritta
DettagliSTRUMENTO PER LA COMPRESSIONE E LA CRIPTAZIONE DI FILE
Programma di COMPRESSIONE E CRIPTAZIONE SECRETZIP (solo Windows). Il programma è incluso nell USB Flash Drive. Consultare il manuale contenuto nell USB Flash Drive o visitare il sito: www. integralmemory.com
DettagliUtilizzo della Intranet, forum privati Soci e Staff
Utilizzo della Intranet, forum privati Soci e Staff Se durante la registrazione ad Associazioni Milano avete fatto richiesta del servizio denominato Intranet, questo sarà subito disponibile già a partire
DettagliProgettAzione V anno Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni
Unità 3 - Architetture per applicazioni web Lezione: Esempio sviluppo applicazioni Web service Hello world con Visual Studio 2012 Si tratta di un semplice esempio di web service, infatti come tutti I programmi
DettagliVisual Studio 2010 RC Ria Services - Business Application and datagrid Part 1
Visual Studio 2010 RC Ria Services - Business Application and datagrid Part 1 In questo tutorial vedremo come utilizzare la tecnologia Ria Services per collegare una datagrid ad un database all interno
DettagliRegistratori di Cassa
modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...
Dettagliwww.filoweb.it STAMPA UNIONE DI WORD
STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere
Dettagliimae2 - Informazioni Generali
imae2 - Informazioni Generali Benvenuti nel sistema imae2, con il quale potrete visualizzare le Vostre occupazioni aggiornate in tempo reale, direttamente sul vostro iphone, ipad oppure un qualsiasi smartphone
DettagliGERARCHIE RICORSIVE - SQL SERVER 2008
GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER
DettagliISTRUZIONI PER L INSTALLAZIONE DI MINGW
ISTRUZIONI PER L INSTALLAZIONE DI MINGW Prima di iniziare la procedura di installazione di MinGW dobbiamo dire che il presente software è un compilatore C che non possiede un ambiente di programmazione.
Dettagli1. Le macro in Access 2000/2003
LIBRERIA WEB 1. Le macro in Access 2000/2003 Per creare una macro, si deve aprire l elenco delle macro dalla finestra principale del database: facendo clic su Nuovo, si presenta la griglia che permette
DettagliSistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate
MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento
DettagliClient - Server. Client Web: il BROWSER
Client - Server Client Web: il BROWSER Il client Web è un applicazione software che svolge il ruolo di interfaccia fra l utente ed il WWW, mascherando la complessità di Internet. Funzioni principali Inviare
DettagliMotorola Phone Tools. Guida rapida
Motorola Phone Tools Guida rapida Sommario Requisiti minimi...2 Operazioni preliminari all'installazione Motorola Phone Tools...3 Installazione Motorola Phone Tools...4 Installazione e configurazione del
DettagliSOMMARIO... 3 INTRODUZIONE...
Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...
DettagliPowerPoint. Guida introduttiva
PowerPoint Guida introduttiva Informativa Questa guida nasce con l intento di spiegare in modo chiaro e preciso come usare il software Microsoft PowerPoint. In questa guida saranno tralasciati tutti quei
DettagliCorso su LINQ Lezione 16. Introduzione
LINQ to SQL Introduzione Con questa lezione introduciamo il flavor LINQ to SQL. Dopo aver visto quindi tutte le funzionalità e gli operatori di LINQ to Object, affronteremo ora la tematica riguardante
DettagliBREVE MANUALE DI SOPRAVVIVENZA A WINDOWS 8
BREVE MANUALE DI SOPRAVVIVENZA A WINDOWS 8 Sui nuovi computer della sala insegnanti è stato installato Windows 8 professional, il nuovo sistema operativo di Microsoft. Questo sistema operativo appare subito
DettagliMANUALE EDICOLA 04.05
MANUALE EDICOLA 04.05 Questo è il video che si presenta avviando il programma di Gestione Edicola. Questo primo video è relativo alle operazioni di carico. CARICO Nello schermo di carico, in alto a sinistra
DettagliMANUALE PARCELLA FACILE PLUS INDICE
MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella
DettagliI TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.
I TUTORI Indice Del Manuale 1 - Introduzione al Manuale Operativo 2 - Area Tutore o Area Studente? 3 - Come creare tutti insieme i Tutori per ogni alunno? 3.1 - Come creare il secondo tutore per ogni alunno?
DettagliManuale Utente Albo Pretorio GA
Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate
DettagliIl web server Apache Lezione n. 3. Introduzione
Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar
DettagliManuale Utente Amministrazione Trasparente GA
Manuale Utente GA IDENTIFICATIVO DOCUMENTO MU_AMMINISTRAZIONETRASPARENTE-GA_1.0 Versione 1.0 Data edizione 03.05.2013 1 Albo Pretorio On Line TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione
DettagliGuida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta
Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta. Configurazione Account di posta dell Università di Ferrara con il Eudora email Eudora email può
DettagliL interfaccia utente di Office 2010
L interfaccia utente di Office 2010 Personalizza la barra multifunzione Pagine: 3 di 4 Autore: Alessandra Salvaggio - Tratto da: Office 2010 la tua prima guida - Edizioni FAG Milano Ridurre la barra multifunzione
DettagliGuida rapida per i docenti all'uso della piattaforma di e-learning dell'istituto Giua
Guida rapida per i docenti all'uso della piattaforma di e-learning dell'istituto Giua Moodle è la piattaforma didattica per l'e-learning utilizzata dall'istituto Giua per consentire ai docenti di creare
DettagliUso dei modelli/template
Uso dei modelli/template Il modello (o template, in inglese) non è altro che un normale file di disegno, generalmente vuoto, cioè senza alcuna geometria disegnata al suo interno, salvato con l estensione.dwt.
DettagliCodifica: dal diagramma a blocchi al linguaggio C++
Codifica: dal diagramma a blocchi al linguaggio C++ E necessario chiarire inizialmente alcuni concetti. La compilazione Il dispositivo del computer addetto all esecuzione dei programmi è la CPU La CPU
DettagliIstruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)
Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Text Analytics versione 15 mediante un licenza
Dettagli3. Installare Wamp Server
E107 WEB SYSTEM Corso on line di progettazione siti dinamici: livello base R E A L I Z Z A Z I O N E D I 3. Installare Wamp Server By e107 Italian Team Sito web:http://www.e107italia.org Contatto: admin@e107italia.org
DettagliPER VISUALIZZARE I CONTENUTI DI ARGO SCUOLA NEXT E NECESSARIO UTILIZZARE MOZILLA FIREFOX COME BROWSER DI NAVIGAZIONE.
PER VISUALIZZARE I CONTENUTI DI ARGO SCUOLA NEXT E NECESSARIO UTILIZZARE MOZILLA FIREFOX COME BROWSER DI NAVIGAZIONE. CHI NON DISPONE DI QUESTO BROWSER O NON NE HA UNA VERSIONE AGGIORNATA (ATTUALMENTE
Dettagli2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.
Uso del computer e gestione dei file 57 2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. All interno
DettagliSettaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.
I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice
DettagliPULSANTI E PAGINE Sommario PULSANTI E PAGINE...1
Pagina 1 Sommario...1 Apertura...2 Visualizzazioni...2 Elenco...2 Testo sul pulsante e altre informazioni...3 Comandi...3 Informazioni...4 Flow chart...5 Comandi...6 Pulsanti Principali e Pulsanti Dipendenti...6
Dettagli4.1.1.1 APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO
4.1 PER INIZIARE 4.1.1 PRIMI PASSI COL FOGLIO ELETTRONICO 4.1.1.1 APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO L icona del vostro programma Excel può trovarsi sul desktop come in figura. In questo caso basta
DettagliCorso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)
Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio
DettagliIstruzioni operative instal azione FirmaVerifica3.0 Pag.1 di 27
Istruzioni operative installazione FirmaVerifica3.0 Pag.1 di 27 Generalità... 3 Operazioni preliminari... 4 Requisiti tecnici... 5 Installazione applicazione...6 Visualizzazione fornitura... 14 Gestione
DettagliNote per scaricare e installare il software cliccando alla pagina DOWNLOAD del sito,
Come ben sapete, anch io,come voi, sono golosa di schemi,trovati in internet e nei giornali, e questo comporta, soprattutto per gli schemi virtuali, che devo cercare una soluzione per evitare che il mio
DettagliApache 2, PHP5, MySQL 5
Installazione di Apache 2, PHP5, MySQL 5 Corso Interazione Uomo Macchina AA 2005/2006 Installazione e Versioni Considerazione le versioni più recenti dei vari software così da poterne sperimentare le caratteristiche
DettagliCESIT HOWTOS - NUMERO 2/2009
I FEED RSS CESIT HOWTOS - NUMERO 2/2009 < I. N. O. G. S. > I N D I C E INTRODUZIONE II RSS IN MOZILLA THUNDERBIRD III RSS IN FIREFOX III RSS IN INTERNET EXPLORER 7 IV ALTRI SISTEMI PER I FEED RSS IV CONCLUSIONI
DettagliDisegni di Ricerca e Analisi dei Dati in Psicologia Clinica. Rcmdr
Disegni di Ricerca e Analisi dei Dati in Psicologia Clinica Rcmdr http://www.r-project.org http://qplab.psy.unipd.it Che cos è Rcmdr? Rcmdr è un pacchetto che possiamo scaricare dal CRAN e installare su
DettagliGateManager. 1 Indice. tecnico@gate-manager.it
1 Indice 1 Indice... 1 2 Introduzione... 2 3 Cosa vi serve per cominciare... 2 4 La Console di amministrazione... 2 5 Avviare la Console di amministrazione... 3 6 Come connettersi alla Console... 3 7 Creare
DettagliBreve guida a Linux Mint
Breve guida a Linux Mint Il Desktop. Il "desktop" (scrivania) è la parte del sistema operativo che è responsabile per gli elementi che appaiono sul desktop: il Pannello, lo sfondo, il Centro di Controllo,
DettagliIl calendario di Windows Vista
Il calendario di Windows Vista Una delle novità introdotte in Windows Vista è il Calendario di Windows, un programma utilissimo per la gestione degli appuntamenti, delle ricorrenze e delle attività lavorative
Dettagli2 Fortino Lugi. Figura Errore. Nel documento non esiste testo dello stile specificato.-3 -- Finestra attiva o nuovo documento
1 Fortino Lugi STAMPA UNIONE OFFICE 2000 Vi sarà capitato sicuramente di ricevere lettere pubblicitarie indirizzate personalmente a voi; ovviamente quelle missive non sono state scritte a mano, ma utilizzando
DettagliLa catalogazione con LIBERO Modulo Catalogazione
CATALOGAZIONE 1. LA CATALOGAZIONE NEL FORMATO UNIMARC 2. COME LEGARE AL RECORD TERMINI DELLE LISTE DI AUTORITA 3. LA SCHERMATA GESTIONE DEL MAGAZZINO 1. LA CATALOGAZIONE NEL FORMATO UNIMARC Per catalogare
DettagliInstallazione di Zelio Soft 2 su Microsoft Windows Vista
Installazione di Zelio Soft 2 su Microsoft Windows Vista 1. Installazione di Zelio Soft 2 v4.1: Per prima cosa installare Zelio Soft 2 (versione 4.1) lanciandone il setup (doppio click sul file Setup.exe
DettagliGuida all uso. Esso sarà riportato nell intestazione. Vediamo:
faxm@il è un applicazione che permette agli utenti dei sistemi di telefonia IP di inviare, ricevere e gestire fax. Il tradizionale sistema di fax è ormai superato. Con faxm@il non riceviamo né spediamo
DettagliModulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress
Copyright Andrea Giavara wppratico.com Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress 1. Il pannello amministrativo 2. I dati importanti 3. Creare il database - Cpanel - Plesk
DettagliMac Application Manager 1.3 (SOLO PER TIGER)
Mac Application Manager 1.3 (SOLO PER TIGER) MacApplicationManager ha lo scopo di raccogliere in maniera centralizzata le informazioni piu salienti dei nostri Mac in rete e di associare a ciascun Mac i
DettagliLezioni di Laboratorio sui Data Base
Lezioni di Laboratorio sui Data Base Docente Tutor: Dott. Gianluigi Roveda Informatica per l'impresa Prima Parte: Open Office - Base PREMESSA Questo lavoro è stato realizzato a partire dalle slides del
DettagliPOSTA ELETTRONICA Per ricevere ed inviare posta occorrono:
Outlook parte 1 POSTA ELETTRONICA La posta elettronica è un innovazione utilissima offerta da Internet. E possibile infatti al costo di una telefonata urbana (cioè del collegamento telefonico al nostro
DettagliMANUALE D USO DELLA PIATTAFORMA ITCMS
MANUALE D USO DELLA PIATTAFORMA ITCMS MANULE D USO INDICE 1. INTRODUZIONE... 2 2. ACCEDERE ALLA GESTIONE DEI CONTENUTI... 3 3. GESTIONE DEI CONTENUTI DI TIPO TESTUALE... 4 3.1 Editor... 4 3.2 Import di
DettagliIstruzioni per la prima installazione del software per i CAF 2005 nuovi Centri di Raccolta.
Istruzioni per la prima installazione del software per i CAF 2005 nuovi Centri di Raccolta. Questa circolare è riservata ai Centri di Raccolta CAF che per la prima volta con i software DataUfficio: 1.
DettagliWindows. Cos è I componenti principali Le funzioni essenziali. www.vincenzocalabro.it 1
Windows Cos è I componenti principali Le funzioni essenziali www.vincenzocalabro.it 1 Cos è Windows è un sistema operativo, ovvero un insieme di software che consente di eseguire le operazioni basilari
DettagliMon Ami 3000 Varianti articolo Gestione di varianti articoli
Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione
DettagliLavorare con PowerPoint
14 Lavorare con PowerPoint In questo spazio iniziamo a parlare di un programma utile per le presentazioni. PowerPoint è sicuramente un programma molto noto ai comunicatori e a quanti hanno bisogno di presentare
DettagliIstruzioni per installare EpiData e i files dati ad uso di NetAudit
Istruzioni per installare EpiData a cura di Pasquale Falasca e Franco Del Zotti Brevi note sull utilizzo del software EpiData per una raccolta omogenea dei dati. Si tratta di istruzioni passo-passo utili
DettagliGESTIONE LISTE R VIRTUALI
GESTIONE LISTE R VIRTUALI La gestione delle liste giocatori virtuali permette di impostare la lista giocatori in modo digitale sul sistema WCM in sostituzione ai supporti cartacei. La compilazione della
DettagliLaboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE
Programmare in Php con Xampp e NetBeans IDE NetBeans è un IDE ben noto ai programmatori Java. Con esso si possono infatti costruire applicazioni desktop professionali dotate di interfaccia grafica, applicazioni
DettagliSharpdesk V3.3. Guida all installazione Versione 3.3.04
Sharpdesk V3.3 Guida all installazione Versione 3.3.04 Copyright 2000-2009 di SHARP CORPORATION. Tutti i diritti riservati. È vietata la riproduzione, l adattamento o la traduzione senza previa autorizzazione
DettagliOSSIF WEB. Manuale query builder
OSSIF WEB Manuale query builder - Maggio 2010 1) Sommario 1) SOMMARIO... 2 INTRODUZIONE... 3 Scopo del documento... 3 Struttura del documento... 3 Descrizione dell interfaccia grafica... 3 SELEZIONE DI
DettagliOffice Web Components in programmi C# da http://escher07.altervista.org
Office Web Components in programmi C# da http://escher07.altervista.org Generalità L obiettivo è realizzare un programma C# che utilizzando il componente Web Pivot permetta di ottenere un risultato come
Dettagli