• Nie Znaleziono Wyników

Labolatorium PUM 3

N/A
N/A
Protected

Academic year: 2021

Share "Labolatorium PUM 3"

Copied!
12
0
0

Pełen tekst

(1)

Laboratorium

Programowanie urządzeń mobilnych

Wprowadzenie

Klasa Transform - Umożliwia realizację różnych zmian obiektu. Obiekt może zostać przesunięty, może być zmieniony jego rozmiar lub obrócony. Klasa Transform jest abstrakcyjna i jest „rodzicem” siedmiu nie abstrakcyjnych klas:

 TranslateTransform - przesuniecie obiektu  ScaleTransform – zmiana rozmiaru obiektu  RotateTransform – obrót wokół punktu

 SkewTransform – przesunięcie w ramach jednego wymiaru  MatrixTransform – zmiany obiektu przy wykorzystaniu macierzy  TransformGroup – połączenie wielu zmian

 CompositeTransform – seria zmian w ustalonym porządku

(2)

Zmiana punktu odniesienia skalowania

Właściwości CenterX i CenterY tworzą tzw. punkt „relative coordinates” (punkt odniesienia skalowania),

TextBlock posiada właściwość RenderTransformOrigin , jest to właśnie punkt „relative coordinates”. Właściwość ta może przyjmować np. takie wartości :

(0, 0) - lewy górny róg (1, 1) - prawy dolny róg (0.5, 0.5) - środek

Klasa TranslateTransform Może np. być wykorzystana do tworzenia tzw. ”cieni” :

(3)

Klasa CompositeTransform

- umożliwia zastosować wiele różnych przekształceń obiektu.

Przykład: Zegar

Zostanie wykorzystana klasa DispatcherTimer, z biblioteki

System.Windows.Threading. CompositeTransform domyślnie przyjmuje wartości z RenderTransform

(4)

Wykorzystano zdarzenie SizeChanged do określenia środka ContenPanel oraz rozmiaru TextBlock - referenceText

(5)

• Timer, który jest zsynchronizowany z częstotliwością odświeżania obrazu jest bardzo istotny dla animacja. Sliverlight dostarcza takie narzędzie, jest to zdarzenia CompositionTarget.Rendering. Obsługa tego zdarzenia jest następująca:

• CompositionTarget jest statyczną klasa, która ma jeden publiczny element - zdarzenie Rendering. Instalacja tego zdarzenia jest następująca:

• Odinstalowanie :

Zdarzenie ManipulationDelta

• Zdarzenie ManipulationDelta jest kluczowe dla dotyków jednego lub więcej palców , skalowania i konsolidowania informacji.

• ManipulationDeltaEventArgs ma dwie właściwości:

CumulativeManipulation i DeltaManipulation, które z kolei mają właściwości o nazwach Translation i Scale.

• DeltaManipulation w zastosowaniu jest często łatwiejsze niż CumulativeManipulation.

• Jeżeli tylko jeden palec jest wykorzystywany, to tylko właściwość Translation jest istotna i może być tylko dodana do TranslateX i TranslateY z właściwości CompositeTransform.

• Jeśli dwa palce dotykają ekranu, właściwość Scale ma wartości niezerowe.

(6)

• Przykład – przemieszczanie piłki

(7)

Zmiana położenia obrazu

 Wykorzystanie klasy RanderTransform.

Odtwarzanie filmów

• Jest tak łatwe, jak wyświetlanie plików graficznych

• Jednak z powodu wielkości plików wideo, przeważnie pliki te są odtwarzane z internetu

(8)

Klasa Canvas (Panel)

Posiada dwie bardzo ważne cechy:

 Obiekty, „dzieci” tej klasy są zawsze wyświetlane w

najmniejszych rozmiarach,

 Metoda MeasureOverride z klasy Canvas zwraca szerokość i

wysokość równą zero - co znaczy, że Canvas nie tworzy

żadnego śladu własnego w układzie Silverlight

 Pozycjonowanie elementy wewnątrz Canvas odbywa się

poprzez podanie poziomych i pionowych współrzędnych

względem lewego górnego rogu.

(9)

ApplicationBar

Do potrzeb programowaniu aplikacji pod Windows Phone 7 został

opracowany spójny interfejs dla użytkowników telefonów

komórkowych. Jest to ApplicationBar i powszechnie nazywany

paskiem aplikacji.

 ApplicationBar pełni tę samą rolę jak menu lub pasek narzędzi

w konwencjonalnych programach Windows.

 Nie ma konwencjonalne menu lub pasek narzędzi w Silverlight

 ApplicationBar (ApplicationBarIconButton i

ApplicationBarMenuItem) są zdefiniowane w przestrzeni nazw

Microsoft.Phone.Shell.

 Gdy telefon jest w pozycji wyprostowanej, ApplicationBar

zawsze pojawia się na dole strony.

 ApplicationBar może zawierać do czterech przycisków.

(czasami określane jako ikony)

 ApplicationBar to zawsze wyświetlać obrazy, zazwyczaj pliki

PNG

 ApplicationBar nie jest częścią standardowego Silverlight,

deklaracja przestrzeni nazw musi być skojarzona z XML

„shell”

Zmiana aktywności przycisków

Przycisk można włączyć w kodzie programu za pomocą

następującej konstrukcji (załączenie trzeciego przycisku):

(10)

Aplikacja musi również obsłużyć naciśnięty przycisk

(11)

Zadnia do realizacji.

Aplikacja 1.

Proszę napisać aplikację, która wyświetla tekst obrócony o 45 stopni i wykorzystuje również element typu Border. Przykładowy końcowy efekt działania jest pokazany poniżej.

Aplikacja 2.

Proszę napisać aplikację, w której tekst ROTATE jest obracany i wykorzystana jest obsługa zdarzenia Rendering

(12)

Aplikacja 3.

Proszę utworzyć aplikację, która wykorzystuje klasę Canvas, a końcowy efekt działania jest pokazany poniżej.

Aplikacja 4.

Proszę utworzyć aplikację, która zawiera ApplicationBar, można wykorzystać kod, który jest podany w części teoretycznej i dopisać obsługę poszczególnych przycisków.

W sprawozdaniu powinien być umieszczony dokładny opis

działania poszczególnych elementów aplikacji.

Cytaty

Powiązane dokumenty

Najpierw musisz zastanowić się jak będzie się nazywać twoje konto, przygotować sobie obrazek (plik graficzny) mające pełnić rolę efektownego nagłówka, przygotować kilka słów

Istnieje raport lub formularz, który generuje listę najlepszych uczniów biorąc pod uwagę średnią z ocen.. Istnieje parametr, który określa jaka część uczniów (wyrażona

Odtworzyć pełny backup c:\backup\demoLS.bak z opcją norecovery tak aby utworzyła się baza demoLS_Second, której pliki będą w katalogu d:\baza.. Polecenie restore musi

Gdy wpiszemy nieznany model- kolor tła Okna Tekstowego powinien stać się jasno czerwony. Rozpoznanie powinno być wykonane zgodnie z tabelą:. Model wpisany

Tym razem będzie nietypowo, gdyż na zajęcia należy przygotować ramkę danych bazującą na danych krukowych zawierającą potencjalne cechy (max 10) do modelu – zmienne

„ Wyprowadzić na konsole sumę liczb całkowitych wprowadzonych jako argumenty wywołania programu ”. Pierwsze aplikacje okienkowe

Jeśli chod jednej danej brakuje wyświetli się okienko dialogowe typu „messageBox”.. z informacją by

Proszę utworzyć tabelę, w której będą umieszone wartości logiczne ko- niunkcji, alternatywy, implikacji i równoważności3. Proszę utworzyć