Zdarzenia i polecenia
|
|
- Halina Zając
- 7 lat temu
- Przeglądów:
Transkrypt
1 WPF Programowanie w środowisku Windows Wykład 10-1 Zdarzenia i polecenia
2 Wykład 10-2 Zdarzenia Metoda obsługi zdarzenia może być do niego przypisana w kodzie C# lub w XAML <Image Name="FionaImage" Margin="5" Source="Images/Fiona_67x77.gif" MouseEnter="FionaImage_MouseEnter" MouseLeave="FionaImage_MouseLeave"/> FionaImage.MouseEnter += new MouseEventHandler(FionaImage_MouseEnter); FionaImage.MouseLeave += FionaImage_MouseLeave;
3 Przekazywanie zdarzeń Wykład 10-3 Z punktu widzenia sposobu przekazywania zdarzeń między kontrolką i jej kontenerem można wyróżnić trzy typy: direct events nie są przekazywane do innych elementów przykłady: MouseEnter, MouseLeave bubbling events w hierarchii elementów przekazywane są "do góry" np. MouseDown jeśli nie zostanie obsłużony w docelowym elemencie, to zdarzenie otrzymuje rodzic tego elementu tunneling events przekazywane są "w dół" np. PreviewKeyDown pozwala w pierwszej kolejności na przechwycenie zdarzenia na poziomie okna WPF używa par komunikatów, np. MouseUp (bubbling) i PreviewMouseUp (tunneling) zdarzenia w tych parach dzielą ten sam obiekt klasy RoutedEventArgs, zatem jeśli w zdarzeniu Preview... w obiekcie zostanie zaznaczona flaga obsłużenia, to drugie zdarzenie nie wystąpi
4 Wykład 10-4 Klasa RoutedEventArgs Wszystkie zdarzenia w WPF jako argument przyjmują obiekty klas dziedziczących z RoutedEventArgs RoutedEventArgs zawiera następujące właściwości: Source obiekt, który spowodował zdarzenie OriginalSource obiekt, który pierwotnie spowodował zdarzenie zwykle ten sam, co w Source, ale w niektórych przypadkach będzie to obiekt umieszczony głębiej w hierarchii drzewa RoutedEvent obiekt zdarzenia zawierający kilka właściwości opisujących zdarzenie Handled ustawienie na True spowoduje, że nastąpi koniec obsługi zdarzenia (żaden element już go nie otrzyma)
5 Wykład 10-5 Zdarzenia klawiatury Dla wszystkich elementów dostępne są: PreviewKeyDown, KeyDown, PreviewTextInput, TextInput, PreviewKeyUp, KeyUp Fokus kontrolka może otrzymać fokus tylko jeśli ma ustawioną właściwość Focusable właściwość TabIndex określa kolejność otrzymywania fokusa KeyboardEventArgs.KeyboardDevice.Modifiers pozwala na sprawdzenie stanu klawiszy Shift, Control, Alt i Windows w momencie wystąpienia zdarzenia Statyczne składowe klasy Keyboard pozwalają na sprawdzenie aktualnego stanu klawiszy
6 Wykład 10-6 Zdarzenia myszy Dla każdego elementu dostępne są następujące zdarzenia: MouseEnter, MouseLeave MouseLeftButtonDown, MouseLeftButtonUp, MouseRightButtonDown, MouseRightButtonUp i odpowiadające im zdarzenia Preview... Klasa Control dodaje: MouseDoubleClick, PreviewMouseDoubleClick Metoda Mouse.Capture pozwala na otrzymywanie przez element zdarzeń myszy także w sytuacji, gdy kursor nie jest położony nad tym elementem Metoda DragDrop.DoDragDrop i składowe obiektu elementu: AllowDrop i Drop pozwalają na obsługę przeciągania myszą
7 Wykład 10-7 Obsługa poleceń WPF pozwala na zdefiniowanie poleceń i przypisanie do nich kontrolek w taki sposób, by nie było konieczne pisanie wielu metod obsługi zdarzeń WPF automatycznie obsługuje zadanie zmiany stanu kontrolek na niedostępny w przypadku, gdy polecenia mają być niedostępne Model obsługi poleceń w WPF wykorzystuje: obiekty poleceń obiekty będące źródłami poleceń obiekty będące celami poleceń przypisania logiki obsługi do poleceń
8 Wykład 10-8 Polecenia Polecenie w WPF są tworzone i implementowane z wykorzystaniem interfejsu ICommand ten interfejs zawiera dwie metody: Execute i CanExecute oraz zdarzenie CanExecuteChanged Klasa RoutedCommand jest podstawową implementacją ICommand z obsługą mechanizmów bubbling i tunneling Wbudowane polecenia są zdefiniowane w 5 klasach: MediaCommands, ApplicationCommands, NavigationCommands, ComponentCommands, EditingCommands Własne polecenia mogą być tworzone jako obiekty klasy RoutedCommand lub RoutedUICommand można także stworzyć własne polecenie definiując klasę implementującą interfejs ICommand
9 Wykład 10-9 Źródła poleceń Źródłem polecenia jest obiekt je wywołujący, np. MenuItem, Button, KeyGesture Źródła poleceń implementują interfejs ICommandSource ten interfejs definiuje 3 właściwości: Command, CommandTarget i CommandParameter ICommandSource jest zaimplementowany w: ButtonBase, MenuItem, Hyperlink i InputBinding InputBinding pozwala na użycie skrótów klawiaturowych (KeyGesture) i gestów myszy (MouseGesture) W większości przypadków obiekt będący źródłem polecenia jest zapisany na zdarzenie CanExecuteChanged
10 Wykład Wiązanie poleceń CommandBinding pozwala na powiązanie polecenia z metodami obsługi jego zdarzeń zawiera właściwość Command, oraz zdarzenia PreviewExecuted, Executed, PreviewCanExecute i CanExecute CommandBinding jest przypisany do określonego obiektu, zwykle okna (często głównego) lub kontrolki w niektórych przypadkach CommandBinding jest przypisany do celu polecenia (np. polecenia związane ze schowkiem dla obiektu TextBox) w większości przypadków najwygodniej jest przypisać do jednego z przodków
11 <Window.CommandBindings> Programowanie w środowisku Windows <CommandBinding Command="ApplicationCommands.Stop" Executed="Stop_Executed" Commanding CanExecute="Stop_CanExecute"/> Example </Window.CommandBindings> <Window.InputBindings> <KeyBinding Key="S" Modifiers="Control" Command="ApplicationCommands.Stop"/> </Window.InputBindings> <StackPanel> <Menu> <MenuItem Name="stopMenuItem" Header="Stop menu item" Command="ApplicationCommands.Stop" /> </Menu> <Button Name="stopButton" Command="ApplicationCommands.Stop">Stop button</button> <CheckBox Name="allowStopCheckBox">Allow stop</checkbox> </StackPanel> Wykład private void Stop_Executed(object sender, ExecutedRoutedEventArgs e) { MessageBox.Show("Stop executed!"); } private void Stop_CanExecute(object sender, CanExecuteRoutedEventArgs e) { e.canexecute = (allowstopcheckbox!= null)? allowstopcheckbox.ischecked.value : false; }
12 Wykład Element docelowy polecenia Celem polecenia jest element, na którym jest wykonywane polecenie W WPF właściwość CommandTarget interfejsu ICommandSource jest wykorzystywana tylko wtedy, gdy obiekt polecenia (implementujący ICommand) jest obiektem RoutedCommand Źródło polecenia może wskazać element docelowy tego polecenia Jeśli nie jest zdefiniowany element docelowy polecenia, to za taki zostanie uznany element posiadający fokus przykład: pozycja menu Wklej zadziała na aktualnie edytowanym elemencie TextBox
13 WPF Programowanie w środowisku Windows Wykład Dane
14 Zasoby Wykład Każdy element pochodzący z klasy FrameworkElement lub FrameworkContentElement ma właściwość Resources ta właściwość jest słownikiem (ResourceDictionary) wszystkich posiadanych przez element zasobów zasoby mogą być definiowane dla dowolnego elementu, ale zwykle ma to miejsce dla obiektu nadrzędnego Window lub Page Każdy zasób w słowniku zasobów musi mieć unikatowy klucz w XAML można użyć atrybutu x:key Zasoby są specjalną formą wiązania danych zoptymalizowaną dla scenariusza, w którym jest bardzo dużo odczytów i bardzo mało modyfikacji wartości
15 <Window.Resources> Programowanie w środowisku Windows <SolidColorBrush x:key="mybrush" Color="Gold"/> <Style TargetType="Border" x:key="pagebackground"> Resources <Setter Property="Background" Example Value="Blue"/> </Style> <Style TargetType="TextBlock" x:key="titletext"> <Setter Property="DockPanel.Dock" Value="Top"/> <Setter Property="FontSize" Value="18"/> <Setter Property="Foreground" Value="#4E87D4"/> <Setter Property="FontFamily" Value="Trebuchet MS"/> <Setter Property="Margin" Value="0,40,10,10"/> </Style> <Style TargetType="TextBlock" x:key="label"> <Setter Property="DockPanel.Dock" Value="Right"/> <Setter Property="FontSize" Value="8"/> <Setter Property="Foreground" Value="{StaticResource MyBrush}"/> <Setter Property="FontFamily" Value="Arial"/> </Style> </Window.Resources> <StackPanel> <Border Style="{StaticResource PageBackground}"> <DockPanel> <TextBlock Style="{StaticResource TitleText}">Title</TextBlock> <TextBlock Style="{StaticResource Label}">Label</TextBlock> <TextBlock DockPanel.Dock="Top" HorizontalAlignment="Left" FontSize="36" Foreground="{StaticResource MyBrush}" Text="Text" Margin="20" /> <Button DockPanel.Dock="Top" HorizontalAlignment="Left" Height="30" Background="{StaticResource MyBrush}" Margin="40">Button</Button> </DockPanel> Krzysztof </Border> Mossakowski </StackPanel> Wykład 10-15
16 Wykład Zasoby c.d. Zasoby można także definiować na poziomie aplikacji, wtedy są dostępne dla wszystkie okien lub stron <Application In such x:class="wpfapplication1.app" case, they are available for all windows, pages, etc. xmlns=" xmlns:x=" StartupUri="Data/Resources.xaml" Startup="Application_Startup" Exit="Application_Exit"> <Application.Resources> <SolidColorBrush x:key="mainbrush">black</solidcolorbrush> </Application.Resources> </Application> <Window [...]> <Ellipse DockPanel.Dock="Top" HorizontalAlignment="Left" Width="100" Height="100" Fill="{StaticResource MainBrush}" Margin="40" /> </Window>
17 Dynamiczne zasoby Dynamiczne zasoby mogą być modyfikowane podczas wykonania programu <Ellipse DockPanel.Dock="Top" HorizontalAlignment="Left" Width="100" Height="100" Margin="40" Fill="{DynamicResource MainBrush}" MouseDown="Ellipse_MouseDown" /> Wykład private void Ellipse_MouseDown(object sender, MouseButtonEventArgs e) { Application.Current.Resources["MainBrush"] = new SolidColorBrush(Colors.Blue); } Dynamiczne wiązanie w kodzie można osiągnąć wykorzystując metodę SetResourceReference button1.setresourcereference(button.backgroundproperty,"mainbrush"); Użycie dynamicznych zasobów jest mniej wydajne w porównaniu ze statycznymi zasobami
18 Wykład Wiązanie danych Wiązanie danych pozwala na określenie, jakie wartości wskazanych właściwości docelowego obiektu mają być ustawione na podstawie danych pobranych z jakiegoś obiektu właściwość musi być typu dependency property zwykle jest to właściwość jakiegoś elementu przykłady obiektów źródłowych: inny element, własna struktura danych, dane z obiektów ADO.NET lub LINQ
19 Przykład wiązania danych z elementu Wykład <StackPanel> <StackPanel.Resources> <x:array x:key="availablecolors" x:type="{x:type Color}"> <x:static Member="Colors.Black"/> <x:static Member="Colors.Red"/> <x:static Member="Colors.Green"/> <x:static Member="Colors.Blue"/> </x:array> <CollectionViewSource Source="{Binding Source={x:Static Fonts.SystemFontFamilies}}" x:key="availablefontfamilies"/> </StackPanel.Resources> <ComboBox Name="fontFamilyComboBox" ItemsSource="{Binding Source={StaticResource AvailableFontFamilies}}" SelectedIndex="0" IsReadOnly="True"> <ComboBox.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding}" FontFamily="{Binding}"/> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox>
20 <ComboBox Programowanie Name="colorsComboBox" w środowisku Windows ItemsSource="{StaticResource AvailableColors}" SelectedIndex="2" IsReadOnly="True"> Element-To-Element Binding Example <ComboBox.ItemTemplate> <DataTemplate> <Border x:name="selecteditemborder" MinHeight="16" MinWidth="100" > <Border.Background> <SolidColorBrush Color="{Binding}"/> </Border.Background> </Border> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> <TextBox Name="textBox">Something</TextBox> <Slider Name="sizeSlider" TickFrequency="1" TickPlacement="TopLeft" Minimum="1" Maximum="96" Value="10"/> Wykład <TextBlock Text="{Binding ElementName=textBox, Path=Text}" FontSize="{Binding ElementName=sizeSlider, Path=Value}" FontFamily= "{Binding ElementName=fontFamilyComboBox, Path=SelectedItem}" > <TextBlock.Foreground> <SolidColorBrush Color= "{Binding ElementName=colorsComboBox, Path=SelectedItem}" /> </TextBlock.Foreground> </TextBlock> </StackPanel>
21 Wykład Błędy wiązania danych WPF nie zgłasza wyjątków w przypadku problemów z powiązaniem jeśli nie ma właściwości, to po prostu nic się nie dzieje Jedyną informacją o problemach jest wpis na wyjściu debugowym (np. w oknie Output Visual Studio) System.Windows.Data Error: 22 : Cannot convert '#FF008000' from type 'Color' to type 'System.Windows.Media.Brush' for 'en-us' culture with default conversions; consider using Converter property of Binding. NotSupportedException: 'System.NotSupportedException: BrushConverter cannot convert from System.Windows.Media.Color. at System.ComponentModel.TypeConverter.GetConvertFromException(Object value) at System.ComponentModel.TypeConverter.ConvertFrom(ITypeDescriptorContext at System.Windows.Media.BrushConverter.ConvertFrom(ITypeDescriptorContext at MS.Internal.Data.DefaultValueConverter.ConvertHelper(Object o, Type Można zmienić wygląd źródłowego elementu powiadamiając w tej sposób o problemie
22 Wykład Tworzenie wiązania w kodzie Binding binding = new Binding(); binding.source = sizeslider; binding.path = new PropertyPath("Value"); previewtextblock.setbinding(fontsizeproperty, binding); Wiązanie można usunąć za pomocą jednej z dwóch statycznych metod klasy BindingOperations: ClearBinding lub ClearAllBindings te metody są w stanie także usunąć wiązanie zdefiniowane w XAML Sugerowane jest wykorzystanie XAML do tworzenia powiązań
23 Wykład Kierunek powiązania Wyliczenie BindingMode definiuje 5 typów powiązań: OneWay element docelowy jest uaktualniany stosownie do zmian w źródłowym obiekcie OneWayToSource obiekt źródłowy jest uaktualniany stosownie do zmian w docelowym elemencie TwoWay uaktualnianie źródło <-> cel jest dwukierunkowe OneTime dane pobierane są tylko raz, późniejsze modyfikacje źródła są ignorowane Default: TwoWay dla właściwości, które mogą być modyfikowane przez użytkownika, np. TextBox.Text OneWay w pozostałych przypadkach
24 Wykład Wiązanie do obiektów innych niż elementy Jako źródło wiązania danych może zostać wykorzystana dowolna publiczna składowa dowolnego obiektu to musi być właściwość (property), publiczna składowa (field) nie może być użyta W przypadku docelowych obiektów nie będących elementami można wykorzystać następujące właściwości: Source RelativeSource DataContext
25 Wykład Właściwość Source Właściwość Source określa źródłowy obiekt i właściwość wiązania Można wykorzystać statyczne obiekty <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily}}" /> Można także wykorzystać zasoby <StackPanel.Resources> <FontFamily x:key="specialfont">trebuchet MS</FontFamily> </StackPanel.Resources> <TextBlock Text="{Binding Source={StaticResource SpecialFont}}" />
26 Wykład Właściwość RelativeSource Używając właściwości RelativeSource jako źródło danych wiązania można wskazać obiekt będący w relacji z celem do definicji wiązania można wykorzystać jeden ze sposobów przedstawionych w przykładach <TextBlock> <TextBlock.Text> <Binding Path="Title"> <Binding.RelativeSource> <RelativeSource Mode="FindAncestor" AncestorType="{x:Type Window}" /> </Binding.RelativeSource> </Binding> </TextBlock.Text> </TextBlock> <TextBlock Text="{Binding Path=Title, RelativeSource= {RelativeSource FindAncestor, AncestorType={x:Type Window}}}"> </TextBlock>
27 Wykład RelativeSourceMode Dostępne są 4 możliwości dla wykorzystania RelativeSources: Self wiązanie w obrębie jednego elementu FindAncestor wiązanie do nadrzędnego elementu konieczne jest podanie AncestorType można podać także AncestorLevel PreviousData wiązanie do poprzedniej porcji danych wykorzystywane przy dowiązywaniu do listy danych TemplatedParent wiązanie z wzorca do elementu działa tylko dla wiązania zdefiniowanego wewnątrz wzorca kontrolki lub wzorca danych
28 Właściwość DataContext Jeśli w definicji wiązania nie jest określona właściwość Source, to jako źródło danych zostanie wzięty obiekt wskazany we właściwości DataContext jeśli jest nieokreślona, to WPF szuka wyżej w drzewie do znalezienia pierwszej określonej <StackPanel> <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily}, Path=Source}"/> <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily}, Path=LineSpacing}"/> <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily}, Path=FamilyTypefaces[0].Style}"/> <TextBlock Text="{Binding Source={x:Static SystemFonts.IconFontFamily}, Path=FamilyTypefaces[0].Weight}"/> </StackPanel> <StackPanel DataContext="{x:Static SystemFonts.IconFontFamily}"> <TextBlock Text="{Binding Path=Source}"/> <TextBlock Text="{Binding Path=LineSpacing}"/> <TextBlock Text="{Binding Path=FamilyTypefaces[0].Style}"/> <TextBlock Text="{Binding Path=FamilyTypefaces[0].Weight}"/> </StackPanel> Wykład 10-28
29 Wiązanie do kolekcji obiektów Wszystkie obiekty klas dziedziczących z ItemsControl udostępniają trzy właściwości: ItemsSource kolekcja źródłowych danych DisplayMemberPath właściwość źródłowych obiektów, która zostanie użyta ItemTemplate wzorzec danych, który zostanie wykorzystany do stworzenia prezentacji danych Wykład <Window x:class="wpfapplication1.data.bindingtocollection" xmlns=" xmlns:x=" xmlns:src="clr-namespace:wpfapplication1" Title="BindingToCollection" Height="300" Width="300"> <StackPanel> <StackPanel.Resources> <src:customers x:key="customers"/> </StackPanel.Resources> <ListBox ItemsSource="{StaticResource customers}" DisplayMemberPath="LastName"/> </StackPanel> </Window>
30 Wykład ObservableCollection<T> ObservableCollection<T> to klasa będącą kolekcją danych implementującą INotifyCollectionChanged ten interfejs zawiera zdarzenie CollectionChanged, które powinno być wywoływane w przypadku modyfikacji danych zawartych w kolekcji
31 Wykład Konwersja danych Konwerter wartości jest odpowiedzialny za konwersję danych źródłowych tuż przed ich wyświetlenie w docelowym elemencie w dwukierunkowym wiązaniu jest także odpowiedzialny za konwersję wartości przed jej zapisaniem w źródle danych Konwertery wartości mogą być wykorzystane do: formatowania danych do postaci napisów tworzenia obiektów określonych typów
32 Wykład Wykorzystanie konwertera wartości 1. Utworzyć klasę implementującą interfejs IValueConverter 2. Dodać do klasy atrybut ValueConversion i określić w nim typy danych 3. Zaimplementować metody konwersji Convert i ConvertBack <Window x:class="wpfapplication1.data.dateconverterexample" xmlns=" xmlns:x=" xmlns:src="clr-namespace:wpfapplication1" xmlns:sys="clr-namespace:system;assembly=mscorlib"> <Grid> <Grid.Resources> <src:dateconverter x:key="dateconverter"/> </Grid.Resources> <TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding Source={x:Static sys:datetime.now}, Converter={StaticResource dateconverter}}"/> </Grid> </Window>
33 Przykład konwertera wartości Wykład [ValueConversion(typeof(DateTime), typeof(string))] public class DateConverter : IValueConverter { public object Convert(object value, Type targettype, object parameter, CultureInfo culture) { DateTime date = (DateTime)value; return date.toshortdatestring(); } } public object ConvertBack(object value, Type targettype, object parameter, CultureInfo culture) { string strvalue = value.tostring(); DateTime resultdatetime; if (DateTime.TryParse(strValue, out resultdatetime)) { return resultdatetime; } return value; }
34 Sprawdzanie poprawności danych Wykład W WPF wbudowane są możliwości sprawdzania poprawności danych Można wykorzystać jedną z dwóch technik sprawdzania poprawności danych: rzucić wyjątek z kodu ustawiającego wartość właściwości domyślnie WPF ignoruje wszystkie wyjątki rzucane podczas ustawiania wartości właściwości można wykorzystać ExceptionValidationRule do wskazania, że wyjątki nie powinny być ignorowane zdefiniować sprawdzanie poprawności danych na poziomie definicji łączenia danych to pozwala na użycie tej samej logiki sprawdzenia poprawności niezależnie od kontrolki wykorzystanej do wprowadzenia danych
35 Przykład sprawdzania poprawności Wykład <TextBox Grid.Column="1" Grid.Row="1" Width="200" Margin="5,5,50,5" Style="{StaticResource highlightvalidationerror}" Validation.ErrorTemplate="{StaticResource validationtemplate}"> <TextBox.Text> <Binding Path="SomeDate" UpdateSourceTrigger="PropertyChanged"> <Binding.ValidationRules> <ExceptionValidationRule /> </Binding.ValidationRules> </Binding> </TextBox.Text> </TextBox>
36 <ControlTemplate Programowanie x:key="validationtemplate"> w środowisku Windows Wykład <DockPanel> <Border Name="validationBorder" BorderBrush="Red" BorderThickness="2" Validation Padding="1" Example CornerRadius="3"> cont. <Border.Resources> <Storyboard x:key="_blink"> <ColorAnimationUsingKeyFrames AutoReverse="True" BeginTime="00:00:00" Storyboard.TargetName="validationBorder" Storyboard.TargetProperty="(Border.BorderBrush).(SolidColorBrush.Color)" RepeatBehavior="Forever"> <SplineColorKeyFrame KeyTime="00:00:00.5" Value="#00FF0000"/> </ColorAnimationUsingKeyFrames> </Storyboard> </Border.Resources> <Border.Triggers> [...] </Border.Triggers> <AdornedElementPlaceholder/> </Border> <src:exclamation Width="25" Height="25" /> </DockPanel> </ControlTemplate> <Style x:key="highlightvalidationerror" > <Style.Triggers> <Trigger Property="Validation.HasError" Value="True"> <Setter Property="TextBox.Background" Value="Pink" /> <Setter Property="TextBox.ToolTip" Value="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=(Validation.Errors)[0].ErrorContent}"/> </Trigger> </Style.Triggers> </Style>
37 Wykład Wzorce danych Wzorzec danych definiuje sposób, w jaki mają być wyświetlane dane pobrane przez wiązanie Dwa typy kontrolek obsługują wzorce danych: kontrolki wyświetlające pojedynczą zawartość mogą wykorzystać wzorzec danych zdefiniowany we właściwości ContentTemplate kontrolki wyświetlające listę wartości wykorzystują właściwość ItemTemplate <ListBox Name="personsListBox"> <ListBox.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding Path=FirstName}"></TextBlock> </DataTemplate> </ListBox.ItemTemplate> </ListBox>
Programownie w technologii.net wykład 6 Element Binding i Data Binding
Programownie w technologii.net wykład 6 Element Binding i Data Binding 1/41 Element Binding Mechanizm, który pozwala wydobyć pewne informacje z obiektu źródłowego i zapisać je w pewnym obiekcie docelowym.
Bardziej szczegółowoBudowa aplikacji w technologii.net wykład 05 Polecenia i zasoby
Budowa aplikacji w technologii.net wykład 05 Polecenia i zasoby 1/52 Commands polecenia Polecenie jest wyższym poziomem abstrakcji, niż zdarzenie reprezentuje zadanie, które chce wykonać użytkownik (np.
Bardziej szczegółowoBudowa aplikacji w technologii.net wykład 7 konwersja, walidacja, szablony, widoki
Budowa aplikacji w technologii.net wykład 7 konwersja, walidacja, szablony, widoki 1/85 ...
Bardziej szczegółowoWindows Presentation Foundation
20 listopada 2006 1 Wprowadzenie Architektura 2 Wprowadzenie do XAML a Model zdarzeń 3 Style Szablony Dokumenty Wprowadzenie Architektura jest nową biblioteką Microsoftu do budowania interfejsów użytkownika.
Bardziej szczegółowoModele zawartości. WPF wykorzystuje 4 modele zawartości kontrolek: ContentControl pojedyncza zawartość
WPF Programowanie w środowisku Windows Wykład 8-1 Kontrolki Modele zawartości WPF wykorzystuje 4 modele zawartości kontrolek: ContentControl pojedyncza zawartość Wykład 8-2 używane przez: Button, ButtonBase,
Bardziej szczegółowoMVVM Light Toolkit Przewodnik krok po kroku
Julita Borkowska 242817 MVVM Light Toolkit Przewodnik krok po kroku W celu lepszego zrozumienia elementów MVVM Light Toolkit przedstawionych w prezentacji, zostanie poniżej krok po kroku napisany program
Bardziej szczegółowoMVVM i XAML w Visual Studio 2015 / Jacek Matulewski. Gliwice, cop Spis treści
MVVM i XAML w Visual Studio 2015 / Jacek Matulewski. Gliwice, cop. 2016 Spis treści Część I Wzorzec MVVM. Podstawy XAML 7 Rozdział 1. Szybkie wprowadzenie do XAML 9 Wzorzec widoku autonomicznego 9 Tworzenie
Bardziej szczegółowoProgramowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,
Bardziej szczegółowoRozwój aplikacji modułowych Paweł Brudnicki. Dodanie modułu
Rozwój aplikacji modułowych Paweł Brudnicki Moduł jest podstawową jednostką funkcjonalności. Stanowi on część, która może być niezależnie pisana, testowana a nawet wdrażana. W przewodniku dodamy niezależny
Bardziej szczegółowoSystem zdarzeń - wyzwalanie i nasłuchiwanie
System zdarzeń - wyzwalanie i nasłuchiwanie Informacje o module Opis modułu W tym rozdziale dowiesz się czym są zdarzenia silverlight, jakie rodzaje zdarzeo obsługuje oraz jakie strategie informowania
Bardziej szczegółowoProgramowanie obiektowe i zdarzeniowe wykład 1 Wprowadzenie do programowania zdarzeniowego
Programowanie obiektowe i zdarzeniowe wykład 1 Wprowadzenie do programowania zdarzeniowego 1/34 Wymagania wstępne: Znajomość podstaw programowania. Efekty kształcenia: Umiejętność tworzenia prostych aplikacji
Bardziej szczegółowoAby nadać jej pożądaną postać należy w pliku Window1.xaml stworzyć definicję swojego stylu modyfikując ręcznie postać zapisu XAML:
Lab8 WPF Zad1 : - lista z językami i flagami + wiązanie danych z obiektu przerabiana na ComboBox - fisheye przegląd obrazków lupa (obrazki umieszczone na sztywno) - wyświetlenie galerii zdjęć zapisanej
Bardziej szczegółowoPrzewodnik krok po kroku:
Przewodnik krok po kroku: Aplikacja jest rozbudowywana. Jej podstawą jest: https://msdn.microsoft.com/enus/library/ff921174(v=pandp.40).aspx Do aplikacji dodajemy nowy moduł, który posłuży nam do dodawania
Bardziej szczegółowoInstrukcja laboratoryjna cz.3
Języki programowania na platformie.net cz.2 2015/16 Instrukcja laboratoryjna cz.3 Język C++/CLI Prowadzący: Tomasz Goluch Wersja: 2.0 I. Utworzenie projektu C++/CLI z interfejsem graficznym WPF 1 Cel:
Bardziej szczegółowoLaboratorium programowania urządzeń mobilnych
Laboratorium programowania urządzeń mobilnych Wprowadzenie Hierarcha klas dla aplikacji typu Silverlight tworzonej przez Visual Studio jest następująca: Obsługa ekranu W urządzeniach z Windows Phone 7
Bardziej szczegółowoWindows Presentation Foundation
Windows Presentation Foundation Tworzenie interfejsu użytkownika Współpraca projektanta i programisty (XAML) Interfejsy atrakcyjniejsze graficznie (np. 3D) Aplikacje internetowe (XBAP) Użycie Layoutów
Bardziej szczegółowoRys. 3. Kod elementów na stronie po dodaniu kontrolek podstawowych.
1 2 Kontrolki standardowe WP7 Michał Ręczkowicz, Opublikowano: 2012-02-08 http://msdn.microsoft.com/pl-pl/library/rozpoczecie-pracy-z-windows-phone--kontrolki-standardowe W tym samouczku dowiesz się, jakie
Bardziej szczegółowoProgramowanie w technologii.net wykład 8 Style, listy, drzewa, toolbary, menu
Programowanie w technologii.net wykład 8 Style, listy, drzewa, toolbary, menu 1/70 Podstawy Chcąc wielokrotnie wykorzystać pewne ustawienia stylu, może zdefiniować je w zasobach:
Bardziej szczegółowoProgramowanie w technologii.net wykład 3 Dependency Properties, Routed Events
Programowanie w technologii.net wykład 3 Dependency Properties, Routed Events 1/29 Dependency Properties własności zależnościowe - wydajniejsze pamięciowo - dziedziczenie wartości (w drzewie elementów)
Bardziej szczegółowoInstrukcja laboratoryjna nr.4
Języki programowania na platformie.net cz.2 2016/17 Instrukcja laboratoryjna nr.4 Język Visual Basic for.net Prowadzący: Tomasz Goluch Wersja: 3.1 I. Współpraca Visual Basic z C# Cel: Wykorzystanie w kodzie
Bardziej szczegółowoProgramowanie obiektowe i zdarzeniowe
Programowanie obiektowe i zdarzeniowe wkład 2 klas i obiekt namespace ConsoleApplication1 // współrzędne punktu int, ; Jak zdefiniować w programie punkt? = 3; = 2; Może tak? // wpisanie informacji Console.WriteLine("
Bardziej szczegółowoMVVM Light Toolkit. Julita Borkowska
MVVM Light Toolkit Julita Borkowska Czym jest MVVM Light Toolkit? MVVM Light Toolkit został stworzony w 2009 roku przez Laurenta Bugnion. Jest to biblioteka dostarczająca zestaw komponentów pomocnych podczas
Bardziej szczegółowoWindows Presentation Foundation WPF (2)
Windows Presentation Foundation WPF (2) Programowanie Wizualne Paweł Wojciechowski Instytut Informatyki, Politechniki Poznańskiej 2012 Model zdarzeń zdarzenia (ang. events), czyli wiadomości wysłane przez
Bardziej szczegółowoStyles, Templates, Skins & Themes
Styles, Templates, Skins & Themes Co jest co? Style zgrupowane ustawienia właściwości Template nowe Visual Tree dla kontrolki Skin zestaw styli dla całej aplikacji Theme schemat wyglądu obowiązujący w
Bardziej szczegółowoProgramowanie telefonów z Windows Phone 7, cz. 2
Programowanie telefonów z Windows Phone 7, cz. 2 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój
Bardziej szczegółowousing System;... using System.Threading;
Kontekst synchronizacji Wątek w platformie.net może posiadać kontekst synchronizacji reprezentowany przez instancję klasy SynchronizationContext lub jej klasy potomnej. Jeżeli wątek posiada taki kontekst
Bardziej szczegółowoPrzykładowa dostępna aplikacja w Visual Studio - krok po kroku
Przykładowa dostępna aplikacja w Visual Studio - krok po kroku Zadaniem poniższego opisu jest pokazanie, jak stworzyć aplikację z dostępnym interfejsem. Sama aplikacja nie ma konkretnego zastosowania i
Bardziej szczegółowoPodstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio
Podstawy programowania Ćwiczenie Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio Tematy ćwiczenia algorytm, opis języka programowania praca ze środowiskiem, formularz, obiekty
Bardziej szczegółowoProgramowanie w technologii.net wykład 4 Aplikacja i okna
Programowanie w technologii.net wykład 4 Aplikacja i okna 1/30 Aplikacja Aplikacja WPF jest reprezentowana przez instancję klasy System.Windows.Application. pilnuje ona kiedy program się uruchamia i kończy
Bardziej szczegółowoVisual Basic for Applications. Formatki tworzenie,
Visual Basic for Applications Formatki tworzenie, sterowanie, właściwości. Podstawowe typy kontrolek: Wybrane właściwości obiektu UserForm: BackColor kolor wypełnienia tła formatki, BorderStyle fmborderstylenone/fmborderstylesingle,
Bardziej szczegółowoLogger. Następnie w klasie Bootstrapper muimy zarejestrować nasz nowy logger:
Logger Na początku stworzymy własny logger. Do tego calu trzeba utworzyć klasę naszego loggera, która będzie implementować interfejs ILoggerFacade. Oto kod tej klasy: public class SimpleLogger: ILoggerFacade
Bardziej szczegółowoProjekt Hurtownia, realizacja rejestracji dostaw produktów
Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące
Bardziej szczegółowo1. Wprowadzenie do WPF i XAML. Tworzenie interfejsu użytkownika.
Tematy zajęć: 1. Wprowadzenie do WPF i XAML. Tworzenie interfejsu użytkownika. 2. Posługiwanie się podstawowymi kontrolkami. 3. Własności i zdarzenia w WPF. 4. Zadania aplikacji. Okna. 5. Polecenia. Zasoby.
Bardziej szczegółowoxmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname="mainregion" />
1 Tworzenie Shella a. W pierwszej kolejności tworzymy nowy projekt: WPF Application. Name: Shell SolutionName: PrismApp b. Dodajemy bibliotekę PRISM za pomocą NuGet Managera (dla.net Framework 4.5 Prism
Bardziej szczegółowo1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1
1 LINQ 1 1. Cel zajęć Celem zajęć jest zapoznanie się z technologią LINQ oraz tworzeniem trójwarstwowej aplikacji internetowej. 2. Zadanie Proszę przygotować aplikację WWW, która: będzie pozwalała na generowanie
Bardziej szczegółowoInstrukcja laboratoryjna cz.7
Programowanie aplikacji internetowych 2013/2014 Instrukcja laboratoryjna cz.7 Aplikacje na Windows Store Prowadzący: Tomasz Goluch Wersja: 1.1 I. Wprowadzenie 1 Cel: Przekazanie podstawowych informacje
Bardziej szczegółowo- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy
Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla
Bardziej szczegółowoRozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych
Rozdział 3. Zapisywanie stanu aplikacji w ustawieniach lokalnych Jacek Matulewski Materiały dla Podyplomowego Studium Programowania i Zastosowania Komputerów, sekcja Projektowanie i tworzenie aplikacji
Bardziej szczegółowoInstrukcja laboratoryjna cz.6
Programowanie aplikacji internetowych 2013/2014 Instrukcja laboratoryjna cz.6 Technologia Silverlight cz.2 Prowadzący: Tomasz Goluch Wersja: 3.0 I. Model danych (tworzenie bazy na podstawie modelu). Cel:
Bardziej szczegółowoProjekt Hurtownia, realizacja rejestracji dostaw produktów
Projekt Hurtownia, realizacja rejestracji dostaw produktów Ćwiczenie to będzie poświęcone zaprojektowaniu formularza pozwalającego na rejestrację dostaw produktów dla naszej hurtowni. Dane identyfikujące
Bardziej szczegółowoKurs programowania 2 - listy
Kurs programowania 2 - listy Listy rozwijane (ComboBox) Listy rozwijane (rozwijalne) można tworzyć przy użyciu klasy ComboBox. W tabeli poniżej właściwości udostępniane przez tę kontrolkę. Najważniejsza
Bardziej szczegółowoProgramowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków
Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków mgr inż. Maciej Lasota Version 1.0, 13-05-2017 Spis treści Wyjątki....................................................................................
Bardziej szczegółowoProgramowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 07 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami tworzenia aplikacji okienkowych w C#. Wprowadzenie teoretyczne. Rozważana w
Bardziej szczegółowoXAML Extensible Application Markup Language
XAML Extensible Application Markup Language Opis i zastosowania... Maciej Poniedziałek WfiIS IS rok 5 XAML: Język oparty o XML zoptymalizowanym do opisu bogatych, wizualnych interfejsów, takich jak tworzone
Bardziej szczegółowoScenariusz Web Design DHTML na 10 sesji. - Strony statyczne I dynamiczne. - Dodawanie kodu VBScript do strony HTML. Rysunek nie jest potrzebny
Scenariusz Web Design DHTML na 10 sesji L.p. Specyficzne detale 2.1 - Strony statyczne I dynamiczne - Dodawanie kodu VBScript do strony HTML doc w Rysunek nie jest potrzebny 2.1.1 Opcje w pisaniu skryptów
Bardziej szczegółowoBudowa aplikacji wielowarstwowych. Obsługa zdarzeń
Budowa aplikacji wielowarstwowych. Obsługa zdarzeń Laboratorium 6 Technologie internetowe Zofia Kruczkiewicz TINT_Lab_6, Zofia Kruczkiewicz 1 Wykaz pytań dotyczących materiału wykorzystanego w lab6, które
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe IV. Interfejsy i klasy wewnętrzne Małgorzata Prolejko OBI JA16Z03 Plan Właściwości interfejsów. Interfejsy a klasy abstrakcyjne. Klonowanie obiektów. Klasy wewnętrzne. Dostęp do
Bardziej szczegółowoJAVA W SUPER EXPRESOWEJ PIGUŁCE
JAVA W SUPER EXPRESOWEJ PIGUŁCE Obiekt Obiekty programowe to zbiór własności i zachowań (zmiennych i metod). Podobnie jak w świecie rzeczywistym obiekty posiadają swój stan i zachowanie. Komunikat Wszystkie
Bardziej szczegółowoOmówienie wzorców wykorzystywanych w Prism 5.0. Dominika Różycka
1 Omówienie wzorców wykorzystywanych w Prism 5.0 Dominika Różycka Czym jest wzorzec projektowy? 2 3 Wzorzec projektowy 1. Uniwersalne i sprawdzone w praktyce rozwiązanie często pojawiających się, powtarzalnych
Bardziej szczegółowoAplikacje w środowisku Java
Aplikacje w środowisku Java Materiały do zajęć laboratoryjnych Klasy i obiekty - dziedziczenie mgr inż. Kamil Zieliński Katolicki Uniwersytet Lubelski Jana Pawła II 2018/2019 W ramach poprzedniego laboratorium
Bardziej szczegółowoTEMAT : KLASY DZIEDZICZENIE
TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą
Bardziej szczegółowo.NET 3.0. .NET Framework Microsoft Windows Communication Foundation Microsoft Windows Presentation Foundation Microsoft Windows Workflow Foundation
.NET 3.0 i 3.5 .NET 3.0 Składa się z:.net Framework Microsoft Windows Communication Foundation Microsoft Windows Presentation Foundation Microsoft Windows Workflow Foundation.NET Framework jak w wersji
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w
Bardziej szczegółowoRozpoczynając wywód na temat MVVM należy najpierw zadań sobie kilka podstawowych pytań na temat MVVM jako wzorca projektowego :
Slajd3 Dlaczego MVVM? Rozpoczynając wywód na temat MVVM należy najpierw zadań sobie kilka podstawowych pytań na temat MVVM jako wzorca projektowego : Czy musisz dzielić projekt z projektantem (grafikiem
Bardziej szczegółowoProgramowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz
Programowanie komponentowe Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz Struktura wykładu 1. Utworzenie użytkowników i ról na serwerze aplikacji Sun Java System Application
Bardziej szczegółowoPolitechnika Poznańska Wydział Budowy Maszyn i Zarządzania
1) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z podstawowymi elementami obiektowymi systemu Windows wykorzystując Visual Studio 2008 takimi jak: przyciski, pola tekstowe, okna pobierania danych
Bardziej szczegółowoProgramowanie obiektowe i zdarzeniowe wykład 3 Okna i kontrolki
Programowanie obiektowe i zdarzeniowe wykład 3 Okna i kontrolki
Bardziej szczegółowoLaboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz
Aplikacja internetowa zbudowana w oparciu o środowisko Visual Web Java Server Faces. Zarządzanie obiektami typu SesionBeans, RequestBeen i ApplicationBeans, Laboratorium 1 Wzorce oprogramowania lab1, Okres
Bardziej szczegółowoMultimedia JAVA. Historia
Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania
Bardziej szczegółowoLeszek Stasiak Zastosowanie technologii LINQ w
Leszek Stasiak Zastosowanie technologii LINQ w C# 1. Wstęp - połączenie Do naszych zadań będziemy używać Microsoft Visual Studio 2010. Stwórzmy nowy projekt Windows Form Application. Mając do dyspozycji
Bardziej szczegółowoInstrukcja laboratoryjna cz.3
Programowanie aplikacji internetowych 2014/2015 Instrukcja laboratoryjna cz.3 Technologia Silverlight cz.1 Prowadzący: Tomasz Goluch Wersja: 4.1 I. Szablon aplikacji oparty o platformę nawigacyjną. Cel:
Bardziej szczegółowoJava: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak
Java: otwórz okienko Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU klasy wewnętrzne, lokalne i anonimowe biblioteka AWT zestaw Swing JFrame JPanel komponenty obsługa zdarzeń
Bardziej szczegółowoInformatyka I. Interfejs GUI wysokiego poziomu. Biblioteka Swing. Programowanie zdarzeniowe. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Interfejs GUI wysokiego poziomu. Biblioteka Swing. Programowanie zdarzeniowe. dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Interfejs GUI wysokiego poziomu Pojęcie
Bardziej szczegółowoProgramowanie Obiektowe Ćwiczenie 4
Programowanie Obiektowe Ćwiczenie 4 1. Zakres ćwiczenia wyjątki kompozycja 2. Zagadnienia Założeniem, od którego nie należy odbiegać, jest by każdy napotkany problem (np. zatrzymanie wykonywanej metody)
Bardziej szczegółowoTechniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Abstrakcja funkcyjna Struktury Klasy hermetyzacja
Bardziej szczegółowoWprowadzenie do programowania aplikacji mobilnych
Wprowadzenie do programowania aplikacji mobilnych Katedra Inżynierii Wiedzy Plan zajęć 1 XAML; 2 podstawowe kontrolki; 3 obsługa zdarzenia; 4 budowa prostego interfejsu z poziomu XAML i z poziomu kodu;
Bardziej szczegółowoDelphi podstawy programowania. Środowisko Delphi
Delphi podstawy programowania Środowisko Delphi Olsztyn 2004 Delphi Programowanie obiektowe - (object-oriented programming) jest to metodologia tworzeniu programów komputerowych definiująca je jako zbiór
Bardziej szczegółowoWYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.
WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy
Bardziej szczegółowoMarcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych
Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych mluckner@mini.pw.edu.pl http://www.mini.pw.edu.pl/~lucknerm Programy w Javie składają się z pakietów Pakiety zawierają definicje
Bardziej szczegółowoLaboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 7
Instrukcja 7 Laboratoria 9, 10 Opracowanie diagramów sekwencji dla wybranych przypadków użycia reprezentujących usługi oprogramowania wynikających również z wykonanych diagramów czynności; definicja operacji
Bardziej szczegółowoInstrukcja laboratoryjna cz.4
Programowanie aplikacji internetowych 2015/2016 Instrukcja laboratoryjna cz.4 Aplikacje na Windows 8.x Store (C# i XAML) Prowadzący: Tomasz Goluch Wersja: 1.1 I. Wprowadzenie 1 Cel: Przekazanie podstawowych
Bardziej szczegółowoProgramowanie zdarzeniowe
Programowanie zdarzeniowe I. Podstawy obsługi zdarzeń Małgorzata Prolejko ZDA JA16Z03 Plan Pojęcie zdarzenia Klasy i obiekty słuchaczy Rejestracja słuchaczy Obsługa naciśnięcia przycisku Rozpoznawanie
Bardziej szczegółowoWykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz
Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz Zagadnienia 1. Delegaty wiązane, właściwości indeksowane 2. Delegaty niewiązane 3. Nowa wersja kalkulatora, delegaty
Bardziej szczegółowoFunkcje i instrukcje języka JavaScript
Funkcje i instrukcje języka JavaScript 1. Cele lekcji a) Wiadomości Uczeń : zna operatory i typy danych języka JavaScript, zna konstrukcję definicji funkcji, zna pętlę If i For, Do i While oraz podaje
Bardziej szczegółowoLaboratorium z przedmiotu: Inżynieria Oprogramowania INEK Instrukcja 6
Instrukcja 6 Laboratorium 8 Opracowanie diagramów sekwencji dla wybranych przypadków użycia reprezentujących usługi oprogramowania wynikających również z wykonanych diagramów czynności; definicja operacji
Bardziej szczegółowoProgramowanie telefonów z Windows Phone 7, cz. 4
Programowanie telefonów z Windows Phone 7, cz. 4 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój
Bardziej szczegółowoBAZY DANYCH MAKRA I PRZYCISKI. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza
BAZY DANYCH Microsoft Access MAKRA I PRZYCISKI Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii Biomedycznej
Bardziej szczegółowoWykład 5 Okna MDI i SDI, dziedziczenie
Wykład 5 Okna MDI i SDI, dziedziczenie Autor: Zofia Kruczkiewicz Zagadnienia 1. Aplikacja wielookienkowa. Zakładanie projektu typu CLR Windows Forms 1.1. Aplikacja typu MDI 1.2. Aplikacja typu SDI 2. Dziedziczenie
Bardziej szczegółowoLaboratorium 1 - Programowanie proceduralne i obiektowe
Laboratorium 1 - Programowanie proceduralne i obiektowe mgr inż. Kajetan Kurus 4 marca 2014 1 Podstawy teoretyczne 1. Programowanie proceduralne (powtórzenie z poprzedniego semestru) (a) Czym się charakteryzuje?
Bardziej szczegółowoDawid Gierszewski Adam Hanasko
Dawid Gierszewski Adam Hanasko Chcemy stworzyć klasę w której możemy przechowywać dwie zmienne dowolnych typów Tworzymy tyle różnych klas ile potrzeba: Class ParaInt{ int pierwszy; Int drugi; Class ParaButow{
Bardziej szczegółowoDodanie nowej formy do projektu polega na:
7 Tworzenie formy Forma jest podstawowym elementem dla tworzenia interfejsu użytkownika aplikacji systemu Windows. Umożliwia uruchomienie aplikacji, oraz komunikację z użytkownikiem aplikacji. W trakcie
Bardziej szczegółowoBiblioteka Windows Forms
Biblioteka Windows Forms Aplikacje Windows Forms Aplikacje sterowane zdarzeniami Rysowanie oparte na GDI+ "Obudowane" kontrolki Win32 "Elementy" do budowy aplikacji Przestrzeń nazw System.Windows.Forms
Bardziej szczegółowoInżynieria Programowania Laboratorium 6 Pierwsza finalna wersja. Paweł Paduch paduch@tu.kielce.pl
Inżynieria Programowania Laboratorium 6 Pierwsza finalna wersja Paweł Paduch paduch@tu.kielce.pl 25-05-2013 Rozdział 1 Wstęp Dzisiejsze zajęcia będą kontynuacją implementowania interfejsu. Skupimy się
Bardziej szczegółowoĆwiczenie 8. Kontrolki serwerowe
Ćwiczenie 8 Temat: Kontrolki serwerowe ASP.NET cz.2 Cel ćwiczenia: W ramach tego ćwiczenie student zapozna się z kolejnymi kontrolkami serwerowymi oraz z metodami ich walidacji, a także z kontrolkami umożliwiającymi
Bardziej szczegółowoKlasy Obiekty Dziedziczenie i zaawansowane cechy Objective-C
#import "Fraction.h" #import @implementation Fraction -(Fraction*) initwithnumerator: (int) n denominator: (int) d { self = [super init]; } if ( self ) { [self setnumerator: n anddenominator:
Bardziej szczegółowoLaboratorium z przedmiotu: Inżynieria Oprogramowania INP
Laboratoria 5-7- część 1 Identyfikacja klas reprezentujących logikę biznesową projektowanego oprogramowania, definicja atrybutów i operacji klas oraz związków między klasami - na podstawie analizy scenariuszy
Bardziej szczegółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowoKlasy i obiekty cz II
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Klasy i obiekty cz II Hermetyzacja, mutatory, akcesory, ArrayList Rozwijamy aplikację Chcemy, aby obiekty klasy
Bardziej szczegółowoZastosowanie słuchaczy zdarzeń wg
Zastosowanie słuchaczy zdarzeń wg https://docs.oracle.com/javaee/7/jeett.pdf Technologie internetowe 6 1. Obsługa zdarzeń typu valuechangelistener Rejestracja słuchaczy zdarzeń typu valuechangelistener
Bardziej szczegółowo2. W oknie dialogowym Choose Toolbox Items w zakładce.net Framework Components naciskamy przycisk Browse...
KORZYSTANIE Z KONTROLKI.NET LENDEVICERS232 DODAWANIE KONTROLKI DO ZBIORU KOMPONENTÓW DOSTĘPNYCH W PALECIE TOOLBOX (ŚRODOWISKA PROGRAMISTYCZNE FIRMY MICROSOFT) W środowisku programistycznym (Visual C++,
Bardziej szczegółowoWprowadzenie do programowanie obiektowego w języku C++
Wprowadzenie do programowanie obiektowego w języku C++ Część czwarta Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura
Bardziej szczegółowoZaawansowane programowanie w C++ (PCP)
Zaawansowane programowanie w C++ (PCP) Wykład 6 - szablony. dr inż. Robert Nowak - p. 1/15 Kolekcje i algorytmy» Deklaracja szablonu y Pojęcia niezależne od typu: kolekcje (np. listy) algorytmy (np. znajdowania
Bardziej szczegółowoJava Server Faces narzędzie do implementacji w wy prezentacji
Java Server Faces narzędzie do implementacji w wy prezentacji pojęcie komponentu powiązanie z modelem danych widok (View) jako drzewo komponentów obiekty pomocnicze: konwertery, walidatory, obsługa zdarzeń
Bardziej szczegółowoBudowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości
Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy dwie Encje (tabele) prawym
Bardziej szczegółowoMicrosoft.NET: LINQ to SQL, ASP.NET AJAX
Microsoft.NET: LINQ to SQL, ASP.NET AJAX Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2008 oraz serwer bazy danych SQL Server Express 2005 (lub
Bardziej szczegółowoPOLITECHNIKA POZNAŃSKA. Oprogramowanie dla telefonów z systemem Windows Phone 8 obsługujących technologię NFC do sprawdzania listy obecności.
POLITECHNIKA POZNAŃSKA Oprogramowanie dla telefonów z systemem Windows Phone 8 obsługujących technologię NFC do sprawdzania listy obecności. Programowanie Kart Elektronicznych Systemy Informatyczne w Zarządzaniu
Bardziej szczegółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoWstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5 Programowanie komponentowe 1 Przykład 1- Wykonanie prostej aplikacji internetowej w technologii JavaEE w środowisku Netbeans 5.5 z wykorzystaniem
Bardziej szczegółowoKlasy abstrakcyjne, interfejsy i polimorfizm
Programowanie obiektowe 12 kwietnia 2011 Organizacyjne Klasówka będzie 20 IV 2011. Sale jeszcze są pertraktowane. Materiał do wyjątków włącznie. Można mieć swoje materiały nieelektroniczne. Wywołanie z
Bardziej szczegółowoOBIEKTY TECHNICZNE OBIEKTY TECHNICZNE
OBIEKTY TECHNICZNE Klawisze skrótów: F7 wywołanie zapytania (% - zastępuje wiele znaków _ - zastępuje jeden znak F8 wyszukanie według podanych kryteriów (system rozróżnia małe i wielkie litery) F9 wywołanie
Bardziej szczegółowo