Browse Source

Merge pull request #22 from Shawqeem/feat/statusbar

feat: add status bar
tags/0.1.0
TCL GitHub 3 years ago
parent
commit
745a24b42d
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 518 additions and 1 deletions
  1. +1
    -1
      README.md
  2. +9
    -0
      logic/Client/App.xaml
  3. +17
    -0
      logic/Client/App.xaml.cs
  4. +10
    -0
      logic/Client/AssemblyInfo.cs
  5. +18
    -0
      logic/Client/Client.csproj
  6. +25
    -0
      logic/Client/Client.sln
  7. BIN
      logic/Client/EESAST.ico
  8. BIN
      logic/Client/Logo.png
  9. +67
    -0
      logic/Client/MainWindow.xaml
  10. +183
    -0
      logic/Client/MainWindow.xaml.cs
  11. +28
    -0
      logic/Client/StatusBarOfCircumstance.xaml
  12. +34
    -0
      logic/Client/StatusBarOfCircumstance.xaml.cs
  13. +28
    -0
      logic/Client/StatusBarOfHunter.xaml
  14. +38
    -0
      logic/Client/StatusBarOfHunter.xaml.cs
  15. +28
    -0
      logic/Client/StatusBarOfSurvivor.xaml
  16. +32
    -0
      logic/Client/StatusBarOfSurvivor.xaml.cs

+ 1
- 1
README.md View File

@@ -168,7 +168,7 @@ THUAI6 开发组成员与其他贡献者应当遵循以下流程:
- 小组内合理分工,避免个人任务量过重或过轻
- 做好部会记录,及时完成工作任务,避免拖延到ddl
- 各组间多交流,相互了解各自的开发进度,加强协作,遇到困难互相帮助
- 加油,奥里给
- 加油,奥里给 ,冲冲冲

## 开发组成员



+ 9
- 0
logic/Client/App.xaml View File

@@ -0,0 +1,9 @@
<Application x:Class="Client.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Client"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>

+ 17
- 0
logic/Client/App.xaml.cs View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Threading.Tasks;
using System.Windows;

namespace Client
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
}
}

+ 10
- 0
logic/Client/AssemblyInfo.cs View File

@@ -0,0 +1,10 @@
using System.Windows;

[assembly:ThemeInfo(
ResourceDictionaryLocation.None, // where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly // where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]

+ 18
- 0
logic/Client/Client.csproj View File

@@ -0,0 +1,18 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWPF>true</UseWPF>
</PropertyGroup>

<ItemGroup>
<None Remove="Logo.png" />
</ItemGroup>

<ItemGroup>
<Resource Include="Logo.png" />
</ItemGroup>

</Project>

+ 25
- 0
logic/Client/Client.sln View File

@@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.1.32328.378
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client", "Client.csproj", "{5AD8481D-90EF-410C-BD48-355DB97EEAB3}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5AD8481D-90EF-410C-BD48-355DB97EEAB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5AD8481D-90EF-410C-BD48-355DB97EEAB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5AD8481D-90EF-410C-BD48-355DB97EEAB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5AD8481D-90EF-410C-BD48-355DB97EEAB3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {89A74B1B-445C-49EB-9C93-506DC243C227}
EndGlobalSection
EndGlobal

BIN
logic/Client/EESAST.ico View File

Before After

BIN
logic/Client/Logo.png View File

Before After
Width: 1024  |  Height: 1024  |  Size: 95 kB

+ 67
- 0
logic/Client/MainWindow.xaml View File

@@ -0,0 +1,67 @@
<Window x:Class="Client.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Client"
mc:Ignorable="d"
Title="ClientVI" Height="738" Width="850" Background="White" ResizeMode="CanResizeWithGrip" WindowStyle="None" MouseLeftButtonDown="DragWindow" MinHeight="738" MinWidth="1100">

<Window.Resources>
<ImageBrush x:Key="Logo" ImageSource="Logo.png"/>
</Window.Resources>

<Grid Name="MainGrid" Margin="0,0,0,0">
<!--Title行删去了两个赋值语句,等之后补回来-->
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="37*"/>
<RowDefinition Height="138*"/>
<RowDefinition Height="175*"/>
<RowDefinition Height="175*"/>
<RowDefinition Height="175*"/>
<RowDefinition Height="0*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="58*"/>
<ColumnDefinition Width="58*"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="362*"/>
<ColumnDefinition Width="71*"/>
<ColumnDefinition Width="0*"/>
</Grid.ColumnDefinitions>
<!--给地图留好位置-->
<Grid x:Name="UnderLayerOfMap" Margin="6,16,35,14" Grid.RowSpan="5" Grid.Column="3" Grid.Row="1" />
<Grid x:Name="UpperLayerOfMap" Margin="6,16,35,14" Grid.RowSpan="5" Grid.Column="3" Grid.Row="1" />
<!--右上角蓝绿小按钮-->
<Button x:Name="PorC" Content="▶" Margin="0,16,0,0" Background="Green" BorderBrush="Green" FontFamily="Microsoft YaHei" Click="ClickToPauseOrContinue" Grid.Column="4" Grid.Row="2" HorizontalAlignment="Left" Width="24" Height="26" VerticalAlignment="Top"/>
<Button Name="Connect" Content="🔗" Margin="0,11,0,0" VerticalAlignment="Top" Background="Aqua" Click="ClickToConnect" Height="25" Grid.Column="4" HorizontalAlignment="Left" Width="25" Grid.Row="1"/>
<!--右上角的最大化、关闭、最小化按钮-->
<Button Name="MaxButton" Content="🗖" Background="White" FontFamily="Microsoft YaHei" BorderBrush="White" Click="ClickToMaxmize" Grid.Column="4" Height="38" VerticalAlignment="Center" Margin="0,0,47,0" HorizontalAlignment="Right" Width="44"/>
<Button Content="❎" Background="White" FontFamily="Microsoft YaHei" BorderBrush="White" Click="ClickToClose" Grid.Column="4" Height="38" VerticalAlignment="Center" Margin="0,0,1,0" HorizontalAlignment="Right" Width="44"/>
<Button Content="—" Background="White" FontFamily="Microsoft YaHei" BorderBrush="White" Click="ClickToMinimize" Grid.Column="4" Height="38" VerticalAlignment="Center" Margin="0,0,93,0" HorizontalAlignment="Right" Width="44"/>
<!--右侧“帮助”、“关于我们”按钮-->
<Button Content=" 帮&#xA; 助&#xA;(H)" Margin="66,50,0,0" Background="Ivory" Click="ClickForHelp" Grid.Row="2" Grid.Column="4" HorizontalAlignment="Left" Width="46" Height="80" VerticalAlignment="Top"/>
<Button Content="关&#xA;于&#xA;我&#xA;们&#xA;(F)" Margin="68,115,0,0" Background="Ivory" Click="ClickToVisitEESAST" Grid.Row="4" Grid.Column="4" Grid.RowSpan="2" HorizontalAlignment="Left" Width="38" Height="97" VerticalAlignment="Top" />
<!--左上角的EESAST标志、THUAI6文字提示语以及其他按钮-->
<Image Stretch="Fill" Source="/Logo.png" HorizontalAlignment="Left" Width="39" Height="38" VerticalAlignment="Center"/>
<Label Content="THUAI6 Client for players " Margin="37,0,0,0" FontSize="15" Grid.ColumnSpan="2" Grid.Column="0" HorizontalAlignment="Left" Width="194" Height="32" VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5">
<Label.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform Angle="-0.377"/>
<TranslateTransform/>
</TransformGroup>
</Label.RenderTransform>
</Label>
<Button Content="配置连接(C)" Height="35" Background="White" FontFamily="Microsoft YaHei" FontSize="16" BorderBrush="White" Click="ClickToSetConnect" Grid.Column="3" Grid.Row="0" Margin="320
,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="90"/>
<Button Content="我的AI(M)" Height="35" Width="82" Background="White" FontFamily="Microsoft YaHei" FontSize="16" BorderBrush="White" Click="ClickToEnterVS" Grid.Column="3" Grid.Row="0" Margin="223,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left"/>
<Button Content="获取更新(U)" Height="35" Background="White" FontFamily="Microsoft YaHei" FontSize="16" BorderBrush="White" Click="ClickForUpdate" Grid.Column="3" Grid.Row="0" Margin="120,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="93"/>
<Button Content="天梯信息(L)" Height="35" Background="White" FontFamily="Microsoft YaHei" FontSize="16" BorderBrush="White" Click="ClickToCheckLadder" Grid.Column="3" Grid.Row="0" Margin="20,0,0,0" VerticalAlignment="Top" HorizontalAlignment="Left" Width="91"/>
<!--一横一竖两条实线-->
<Border BorderThickness="1" Background="Black" BorderBrush="Black" HorizontalAlignment="Center" Margin="0,5,0,0" Width="2" Grid.RowSpan="5" Grid.Column="2" Grid.Row="1"/>
<Border BorderThickness="1" Background="Black" BorderBrush="Black" Height="2" Margin="67,37,1,0" VerticalAlignment="Top" Grid.ColumnSpan="3" Grid.Row="0" Grid.Column="1"/>
</Grid>
</Window>

+ 183
- 0
logic/Client/MainWindow.xaml.cs View File

@@ -0,0 +1,183 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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.Navigation;
using System.Windows.Shapes;
using System.Diagnostics;

// 留意初始化
// 目前MainWindow还未复现的功能:

// private void ReactToCommandline(),
// private void Playback(string fileName, double pbSpeed = 2.0)
// 绘图函数private void DrawLaser(Point source, double theta, double range,double Width)//三个参数分别为攻击者的位置,攻击方位角(窗口坐标)和攻击半径
// private void DrawProp(MessageToClient.Types.GameObjMessage data, string text),
// private void Attack(object sender,RoutedEventArgs e)
// 地图相关private void ZoomMap(),private void DrawMap()

// 交互:private void ClickToSetMode(object sender, RoutedEventArgs e)
// 最近要解决private void ConnectToServer(string[] comInfo)
// private void KeyBoardControl(object sender, KeyEventArgs e)
// private void GetMap(MessageToClient.Types.GameObjMessage obj)
// private void OnReceive()
// private bool CanSee(MessageOfCharacter msg) (以及两个重载函数)
// private void Refresh(object? sender, EventArgs e)
// private void Bonus()

namespace Client
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
SetStatusBar();
isClientStocked = true;
isPlaybackMode = false;
WindowStartupLocation = WindowStartupLocation.CenterScreen;
}

private void SetStatusBar()
{
StatusBarsOfSurvivor = new StatusBarOfSurvivor[4];
StatusBarsOfHunter = new StatusBarOfHunter(MainGrid, 3, 0);
StatusBarsOfCircumstance = new StatusBarOfCircumstance(MainGrid, 1, 0);
for (int i = 4; i < 8; i++)
{
StatusBarsOfSurvivor[i - 4] = new(MainGrid, i / 2 + 2, i % 2);
}
}

// 连接Server
private void ConnectToServer(string[] comInfo)
{
}
// 之后需要修改,现在只具有修改按钮形状的功能,并不能实现暂停/继续
private void ClickToPauseOrContinue(object sender, RoutedEventArgs e)
{
if (!isClientStocked)
{
isClientStocked = true;
PorC.Content = "▶";
}
else
{
isClientStocked = false;
PorC.Content = "⏸";
}
}
// 未复现
private void ClickToConnect(object sender, RoutedEventArgs e)
{
}

// 窗口最大化、关闭、最小化、拖拽
private void ClickToMaxmize(object sender, RoutedEventArgs e)
{
if (WindowState != WindowState.Maximized)
WindowState = WindowState.Maximized;
else
WindowState = WindowState.Normal;
}
private void ClickToClose(object sender, RoutedEventArgs e)
{
Application.Current.Shutdown();
}
private void ClickToMinimize(object sender, RoutedEventArgs e)
{
WindowState = WindowState.Minimized;
}
private void DragWindow(object sender, RoutedEventArgs e)
{
DragMove();
}

// 寻求帮助、访问EESAST(部分功能未复原)
private void ClickForHelp(object sender, RoutedEventArgs e)
{
PleaseWait();
}
private void ClickToVisitEESAST(object sender, RoutedEventArgs e)
{
try
{
_ = Process.Start("C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe", "https://eesast.com");
}
catch (Exception exc)
{
// ErrorDisplayer error = new("发生错误。以下是系统报告\n" + exc.ToString());
// error.Show();
}
}

// 配置连接(未复原)、我的AI(THUAI5未实现)、获取更新、天梯信息(可能需要网站协助)
private void ClickToSetConnect(object sender, RoutedEventArgs e)
{
// ConnectRegister crg = new();
// crg.Show();
}
private void ClickToEnterVS(object sender, RoutedEventArgs e)
{
// try
//{
// if (!File.Exists("VSRoute.txt"))
// {
// File.Create("VSRoute.txt");
// Exception ex = new("没有路径存储文件,已为您创建。请将VS路径输入该文件,并重新操作。");
// throw ex;
// }//创建路径文件
// using StreamReader sr = new("VSRoute.txt");
// _ = Process.Start(sr.ReadLine());
// }
// catch (Exception exc)
//{
// ErrorDisplayer error = new("发生错误。以下是系统报告:\n" + exc.ToString());
// error.Show();
// }
PleaseWait();
}
private void ClickForUpdate(object sender, RoutedEventArgs e)
{
PleaseWait();
}
private void ClickToCheckLadder(object sender, RoutedEventArgs e)
{
PleaseWait();
}

// 敬请期待函数
private void PleaseWait()
{
try
{
throw new Exception("敬请期待");
}
catch (Exception exc)
{
// ErrorDisplayer error = new(exc.Message);
// error.Show();
}
}
private StatusBarOfSurvivor[] StatusBarsOfSurvivor;
private StatusBarOfHunter StatusBarsOfHunter;
private StatusBarOfCircumstance StatusBarsOfCircumstance;

private bool isClientStocked;
private bool isPlaybackMode;

private long playerID;
private long teamID;
}
}

+ 28
- 0
logic/Client/StatusBarOfCircumstance.xaml View File

@@ -0,0 +1,28 @@
<UserControl x:Class="Client.StatusBarOfCircumstance"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Client"
mc:Ignorable="d"
d:DesignHeight="174" d:DesignWidth="180">
<Grid Name="background" >
<Grid.RowDefinitions>
<RowDefinition Height="35*"/>
<RowDefinition Height="67*"/>
<RowDefinition Height="22*"/>
<RowDefinition Height="20*"/>
<RowDefinition Height="26*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="53*"/>
</Grid.ColumnDefinitions>
<TextBox Name="serial" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="Time:&#xA;Round:" Grid.Row="0" Grid.ColumnSpan="2" FontSize="12" Margin="0,0,0,68" Grid.RowSpan="2"/>
<TextBox Name="status" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="📱:&#xA;🏃:&#xA;🤺:&#xA;🗡:" Grid.Row="1" Grid.ColumnSpan="2"/>
<TextBox Name="scores" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="Scores:" Grid.Row="1" Grid.ColumnSpan="2" Margin="0,68,0,20" Grid.RowSpan="3"/>
<TextBox Name="star" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="" Grid.Row="3" Grid.ColumnSpan="2"/>
<TextBox Name="prop" IsReadOnly="True" BorderBrush="Gray" Text="" FontSize="12" Margin="0,20,0,0" TextWrapping="Wrap" Grid.Row="3" Grid.Column="0" Grid.RowSpan="2"></TextBox>
<ProgressBar Name="skillprogress" Background="White" Margin="0,20,0,0" Grid.Row="3" Grid.Column="1" Grid.RowSpan="2"/>
</Grid>
</UserControl>

+ 34
- 0
logic/Client/StatusBarOfCircumstance.xaml.cs View File

@@ -0,0 +1,34 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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;

namespace Client
{
/// <summary>
/// StatusBarOfCircumstance.xaml 的交互逻辑
/// </summary>
public partial class StatusBarOfCircumstance : UserControl
{
public StatusBarOfCircumstance(Grid parent, int Row, int Column)
{
InitializeComponent();
parent.Children.Add(this);
Grid.SetColumn(this, Column);
Grid.SetColumnSpan(this, 2);
Grid.SetRow(this, Row);
Grid.SetRowSpan(this, 2);
initialized = false;
}
private bool initialized;
}
}

+ 28
- 0
logic/Client/StatusBarOfHunter.xaml View File

@@ -0,0 +1,28 @@
<UserControl x:Class="Client.StatusBarOfHunter"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Client"
mc:Ignorable="d"
d:DesignHeight="174" d:DesignWidth="180">
<Grid Name="background" >
<Grid.RowDefinitions>
<RowDefinition Height="35*"/>
<RowDefinition Height="67*"/>
<RowDefinition Height="22*"/>
<RowDefinition Height="20*"/>
<RowDefinition Height="26*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="53*"/>
</Grid.ColumnDefinitions>
<TextBox Name="serial" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="👥null🤡null&#xD;&#xA;Skill:" Grid.Row="0" Grid.ColumnSpan="2" FontSize="12" Margin="0,0,0,68" Grid.RowSpan="2"/>
<TextBox Name="status" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="🏹:&#xA;🏃:&#xA;🤺:&#xA;🗡:" Grid.Row="1" Grid.ColumnSpan="2"/>
<TextBox Name="scores" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="Scores:" Grid.Row="1" Grid.ColumnSpan="2" Margin="0,68,0,20" Grid.RowSpan="3"/>
<TextBox Name="star" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="" Grid.Row="3" Grid.ColumnSpan="2"/>
<TextBox Name="prop" IsReadOnly="True" BorderBrush="Gray" Text="" FontSize="12" Margin="0,20,0,0" TextWrapping="Wrap" Grid.Row="3" Grid.Column="0" Grid.RowSpan="2"></TextBox>
<ProgressBar Name="skillprogress" Background="White" Margin="0,20,0,0" Grid.Row="3" Grid.Column="1" Grid.RowSpan="2"/>
</Grid>
</UserControl>

+ 38
- 0
logic/Client/StatusBarOfHunter.xaml.cs View File

@@ -0,0 +1,38 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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;

namespace Client
{
/// <summary>
/// StatusBarOfHunter.xaml 的交互逻辑
/// </summary>
public partial class StatusBarOfHunter : UserControl
{
public StatusBarOfHunter(Grid parent, int Row, int Column)
{
InitializeComponent();
parent.Children.Add(this);
Grid.SetColumn(this, Column);
Grid.SetColumnSpan(this, 2);
Grid.SetRow(this, Row);
initialized = false;
}
private bool initialized;
}
}

+ 28
- 0
logic/Client/StatusBarOfSurvivor.xaml View File

@@ -0,0 +1,28 @@
<UserControl x:Class="Client.StatusBarOfSurvivor"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Client"
mc:Ignorable="d"
d:DesignHeight="174" d:DesignWidth="90">
<Grid Name="background" >
<Grid.RowDefinitions>
<RowDefinition Height="35*"/>
<RowDefinition Height="67*"/>
<RowDefinition Height="22*"/>
<RowDefinition Height="20*"/>
<RowDefinition Height="26*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="10*"/>
<ColumnDefinition Width="31*"/>
</Grid.ColumnDefinitions>
<TextBox Name="serial" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="👥null🧓null&#xD;&#xA;Skill:" Grid.Row="0" Grid.ColumnSpan="2" FontSize="12"/>
<TextBox Name="status" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="🔧:&#xA;🏃:&#xA;♥:&#xA;🛡:" Grid.Row="1" Grid.ColumnSpan="2"/>
<TextBox Name="scores" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="Scores:" Grid.Row="2" Grid.ColumnSpan="2"/>
<TextBox Name="star" IsReadOnly="True" BorderBrush="White" TextWrapping="Wrap" Text="" Grid.Row="3" Grid.ColumnSpan="2"/>
<TextBox Name="prop" IsReadOnly="True" BorderBrush="Gray" Text="" FontSize="12" Margin="0" TextWrapping="Wrap" Grid.Row="4" Grid.Column="0"></TextBox>
<ProgressBar Name="skillprogress" Background="White" Margin="0" Grid.Row="4" Grid.Column="1"/>
</Grid>
</UserControl>

+ 32
- 0
logic/Client/StatusBarOfSurvivor.xaml.cs View File

@@ -0,0 +1,32 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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;

namespace Client
{
/// <summary>
/// StatusBarOfSurvivor.xaml 的交互逻辑
/// </summary>
public partial class StatusBarOfSurvivor : UserControl
{
public StatusBarOfSurvivor(Grid parent, int Row, int Column)
{
InitializeComponent();
parent.Children.Add(this);
Grid.SetColumn(this, Column);
Grid.SetRow(this, Row);
initialized = false;
}
private bool initialized;
}
}

Loading…
Cancel
Save