Предмет:
Тип роботи:
Курсова робота
К-сть сторінок:
38
Мова:
Українська
<GradientStop Color="#FF8AAFFF" Offset="1"/>
</LinearGradientBrush>
</Button.Background>
</Button>
<Button Content="СПРАВКА" HorizontalAlignment="Left" Margin="180,337,0,0" VerticalAlignment="Top" Width="460" Height="37" FontStyle="Italic" FontWeight="Normal" FontSize="18" Click="Button_Click_3">
<Button.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFFBFCFF" Offset="0"/>
<GradientStop Color="#FF8AAFFF" Offset="1"/>
</LinearGradientBrush>
</Button.Background>
</Button>
<Button Content="ВЫХОД" HorizontalAlignment="Left" Margin="180,402,0,0" VerticalAlignment="Top" Width="460" Height="41" FontStyle="Italic" FontWeight="Normal" FontSize="18" Click="Button_Click_4">
<Button.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFFBFCFF" Offset="0"/>
<GradientStop Color="#FF8AAFFF" Offset="1"/>
</LinearGradientBrush>
</Button.Background>
</Button>
<Rectangle HorizontalAlignment="Left" Height="81" Margin="149,24,0,0" VerticalAlignment="Top" Width="507">
<Rectangle.Fill>
<ImageBrush ImageSource="/PongGame;component/Textures/menu.png"/>
</Rectangle.Fill>
</Rectangle>
</Grid>
</Window>
Лістинг коду, який виконує основні операції у вікні головного меню наведений нижче:
Обробник кнопки «Новая игра», який розпочинає нову гру:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
new Names().Show();
this.Close();
}
Обробник кнопки «Турнирная таблица», який відкриває результати:
private void btnTable_Click(object sender, RoutedEventArgs e)
{
new TheTable().Show();
}
Обробник кнопки «Настройки», який відкриває меню налаштувань:
private void Button_Click_2(object sender, RoutedEventArgs e)
{ new Settings().Show();}
Обробник кнопки «Справка»:
private void Button_Click_3(object sender, RoutedEventArgs e)
{
new About().Show();
}
Обробник кнопки «Выход»:
private void Button_Click_4(object sender, RoutedEventArgs e)
{ this.Close();}
Вікно «Никнеймы» (Рис. 2.2) передбачено для введення імен ігроків.
Рисунок 2.2 Вікно Names
Код XAML:
<Window x:Class="PongGame.Names"
Title="Никнеймы" Height="237.5" Width="440.625" Topmost="True" ResizeMode="NoResize" WindowStartupLocation="CenterScreen">
<Window.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFBCEDFF" Offset="0"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Window.Background>
<Grid Height="212" VerticalAlignment="Top" Margin="0,0,0,-2">
<Grid.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF698BFF" Offset="0"/>
<GradientStop Color="#FFE0F4FF" Offset="1"/>
</LinearGradientBrush>
</Grid.Background>
<Label Content="Введите никнеймы игроков:" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="75,10,0,0" FontSize="22" FontStyle="Italic"/>
<TextBox x:Name="txtPlayer1" HorizontalAlignment="Left" Height="23" Margin="37,73,0,0" TextWrapping="Wrap" Text=""Имя игрока №1"" VerticalAlignment="Top" Width="160" FontStyle="Italic" TextDecorations="{x:Null}" AcceptsTab="True" TouchDown="txtPlayer1_TouchDown" MouseDown="txtPlayer1_MouseDown" GotFocus="txtPlayer1_GotFocus"/>
<TextBox x:Name="txtPlayer2" HorizontalAlignment="Left" Height="23" Margin="234,73,0,0" TextWrapping="Wrap" Text=""Имя игрока №2"" VerticalAlignment="Top" Width="160" FontStyle="Italic" TextDecorations="{x:Null}" AcceptsTab="True" GotFocus="txtPlayer2_GotFocus"/>
<Button Content="Играть!" HorizontalAlignment="Left" Margin="136,120,0,0" VerticalAlignment="Top" Width="157" Height="34" Click="Button_Click_1"/>
<Button Content="Назад" HorizontalAlignment="Left" Height="24" Margin="165,169,0,0" VerticalAlignment="Top" Width="105" Click="Button_Click_2"/>
</Grid>
</Window>
Обробник кнопки, який запускає гру:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
if ((txtPlayer1.Text.Equals(string.Empty)) || (txtPlayer2.Text.Equals(string.Empty)) || (txtPlayer1.Text.Equals("Имя игрока №1")) || (txtPlayer2.Text.Equals("Имя игрока №2")))
MessageBox.Show("Ошибка при заполнении ников игроков!");
else{new MainWindow(txtPlayer1.Text, txtPlayer2.Text).Show();
this.Close();
} }
Вікно «Игровое поле» (Рис. 2.3) передбачено для процесу гри.
Рисунок 2.3 Вікно «Игровое поле»
Код XAML:
<Window x:Name="Window1" x:Class="PongGame.MainWindow"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:system="clr-namespace:System;assembly=System"
KeyDown="MainWindow_OnKeyDown"
Title="Игровое поле" Height="559.667" Width="817.333" ResizeMode="NoResize" Loaded="Window_Loaded_1" WindowStartupLocation="CenterScreen">
<!--Игровое поле -->
<Grid>
<Canvas Name="MainCanvas" Margin="-3,49,0,0" HorizontalAlignment="Left" Width="804" Panel.ZIndex="1">
<Canvas.Background>
<ImageBrush ImageSource="/PongGame;component/Textures/main_img.png"/>
</Canvas.Background>
<!--Левая ракетка -->
<!-- Canvas.Top - Возвращает или задает значение, представляющее расстояние между верхней частью элемента и верхней частью родительского элемента Canvas. -->
<Rectangle Height="80" Width="20"