当前位置: 首页 > news >正文

寻花问柳专注做一家男人爱的网站照片组合拼图

寻花问柳专注做一家男人爱的网站,照片组合拼图,python wordpress采集,大连巨人网络推广有限公司开始使用 C# 开发使用的软件Visual Studio 2019 文章所有的代码都放在 https://github.com/hikinazimi/head-first-Csharp 创建一个控制台应用 打开Visual Studio 2019 创建项目 选择控制台应用程序 创建后点击运行,就可以在控制台打印Hello World 构建一个游戏(创建WPF项目…

开始使用 C#

开发使用的软件Visual Studio 2019
文章所有的代码都放在
https://github.com/hikinazimi/head-first-Csharp

创建一个控制台应用

打开Visual Studio 2019 创建项目

在这里插入图片描述
选择控制台应用程序
在这里插入图片描述
创建后点击运行,就可以在控制台打印Hello World
在这里插入图片描述

构建一个游戏(创建WPF项目)

构建游戏的步骤

  1. 首先创建WPF项目
  2. 使用XAML构建窗口
  3. 编写C#代码向这个窗口增加随机的动物表情符号
  4. 允许用户成对的点击符号配对
  5. 增加一个计时器

1.创建WPF项目

在这里插入图片描述
在MainWindow.xaml文件下打开工具箱
在这里插入图片描述

2.使用XAML构建窗口

在xaml文件下使用如下代码创建一个4*4方格的界面
Grid为网格的框架
TextBlock为显示的文字

<Window x:Class="MatchGame.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:MatchGame"mc:Ignorable="d"Title="Find all of the matching animals" Height="450" Width="400"><Grid x:Name="mainGrid"><Grid.ColumnDefinitions><ColumnDefinition /><ColumnDefinition /><ColumnDefinition /><ColumnDefinition /></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition /><RowDefinition /><RowDefinition /><RowDefinition /><RowDefinition /></Grid.RowDefinitions><TextBlock Text="?" FontSize="36" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="1" /><TextBlock Text="?" FontSize="36" HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="2"/><TextBlock Text="?" FontSize="36" HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="3"/><TextBlock Text="?" FontSize="36" HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Row="1" /><TextBlock Text="?" FontSize="36" Grid.Row="1" Grid.Column="1"HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="1" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="1" Grid.Column="3" HorizontalAlignment="Center" VerticalAlignment="Center"/><TextBlock Text="?" FontSize="36" Grid.Row="2" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="2" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="2" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="2" Grid.Column="3" HorizontalAlignment="Center" VerticalAlignment="Center"/><TextBlock Text="?" FontSize="36" Grid.Row="3" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="3" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="3" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock Text="?" FontSize="36" Grid.Row="3" Grid.Column="3" HorizontalAlignment="Center" VerticalAlignment="Center" /><TextBlock x:Name="timeTextBlock" Text="Elapsed time" FontSize="36"HorizontalAlignment="Center" VerticalAlignment="Center"Grid.Row="4" Grid.ColumnSpan="4" /></Grid></Window>

打开.cs文件,这是程序逻辑代码实现的地方
在这里插入图片描述

3.编写C#代码向这个窗口增加随机的动物表情符号

然后再.cs文件下输入如下代码

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;namespace MatchGame
{/// <summary>/// MainWindow.xaml 的交互逻辑/// </summary>public partial class MainWindow : Window{public MainWindow(){InitializeComponent();SetUpGame();}private void SetUpGame(){List<string> animalEmoji = new List<string>()//创建表情列表{"😀","😀","😅", "😅","🍔","🍔","🍿", "🍿","🥩","🥩","🍠","🍠","😘", "😘","🚐", "🚐",};Random random = new Random();//mainGrid位xaml中grid的标签名,如<Grid x:Name="mainGrid">foreach (TextBlock textBlock in mainGrid.Children.OfType<TextBlock>()){int index = random.Next(animalEmoji.Count);string nextEmoji = animalEmoji[index];textBlock.Text = nextEmoji;animalEmoji.RemoveAt(index);}}}
}

然后我们就可以看到如下的界面
在这里插入图片描述

4.允许用户成对的点击符号配对

在textblock组件中MouseDown中添加如下函数
在这里插入图片描述

TextBlock lastTextBlockClicked;bool findingMatch = false;//跟踪是否只点击了一个private void TextBlock_MouseDown(object sender, MouseButtonEventArgs e){TextBlock textBlock = sender as TextBlock;if (findingMatch == false)//第一次选择{textBlock.Visibility = Visibility.Hidden;lastTextBlockClicked = textBlock;findingMatch = true;}else if (textBlock.Text == lastTextBlockClicked.Text){//第二次选择且相同matchesFound++;textBlock.Visibility = Visibility.Hidden;findingMatch = false;}else{//第二次选择且不同lastTextBlockClicked.Visibility = Visibility.Visible;findingMatch = false;}}

快速给所有xaml文件改MouseDown事件
在这里插入图片描述
将 /> 替换为 MouseDown=“TextBlock_MouseDown”/>

5. 增加一个计时器

首先在最上面的namespace下添加using System.Windows.Threading;
然后在添加如下代码

    public partial class MainWindow : Window{DispatcherTimer timer = new DispatcherTimer();int tenthsOfSecondsElapsed;//过去的时间int matchesFound;//找到的动物public MainWindow(){InitializeComponent();timer.Interval = TimeSpan.FromSeconds(.1);timer.Tick += Timer_Tick;SetUpGame();}private void Timer_Tick(object sender, EventArgs e){tenthsOfSecondsElapsed++;timeTextBlock.Text = (tenthsOfSecondsElapsed / 10F).ToString("0.0s");if(matchesFound==8){timer.Stop();timeTextBlock.Text = timeTextBlock.Text + " - end";}}

在xaml下添加一个新的textBlock
添加后有17个textBlock,导致数组越界,所以我们要使用if (textBlock.Name != “timeTextBlock”)判断

            foreach (TextBlock textBlock in mainGrid.Children.OfType<TextBlock>()){if (textBlock.Name != "timeTextBlock"){int index = random.Next(animalEmoji.Count);string nextEmoji = animalEmoji[index];textBlock.Text = nextEmoji;animalEmoji.RemoveAt(index);}}

最终结果如下
在这里插入图片描述

至此,我们就学习完了第一章,然后让我们复习一下本章讲了什么

  • 学习了控制台的创建
  • 学习了WPF的创建,以及一个简易游戏的实现
  • xaml文件的简单应用
  • 使用C#控制游戏逻辑的运行
http://www.yayakq.cn/news/206612/

相关文章:

  • 网站建设的价做网站大图素材
  • 阿里云备案网站建设方案书案例长沙门户网站建设
  • 网站开发需要什么基础知识常见的网站建设技术
  • 深圳福田区住房和建设局网站不收费的网站有哪些
  • mysql做网站怎么查看数据域名申请成功后怎么做网站
  • 北京网站制作设计与开发服务河南建设工程信息网 最权威平台中项网
  • 公司域名不变网站做变动小建筑公司简介模板
  • 河北大良网站建设销售网络建设应该如何着手
  • 做网站工资还没有文员高安卓 wordpress
  • 商城网站开发用什么框架logo设计公司 艺点意创
  • 做好评做销量的网站163手机移动网站
  • 建设网站公司联系方式迅驰互联网站建设网络推广怎么样
  • 怎么做网站的访问量禁用免费app网页
  • 免备案网站网站设计制作公司需要什么资质
  • 网站做系统下载做金融看哪些网站有哪些内容
  • 网站开发饼图样式第三方网站
  • 关键词优化网站排名wordpress模版 使用
  • 仿公众号网站嘉兴网站建设正规公司
  • 专业网站制作公司是如何处理一个优秀的网站的沈阳网站建设公司排名
  • 广州网站建设专注乐云seo5118站长工具箱
  • 网站清除黑链辽宁建设工程信息网查询系统
  • 深圳网站建设团队营销策略从哪几个方面分析
  • 惠州建网站公司口子网站怎么做
  • 长春建站优化加徽信xiala5效果好中国设计者联盟官网
  • 黑色系 网站山西省城乡住房建设厅网站
  • 网站建设电销职责织梦网站做图床
  • 网站建设会出现的问题网站建设游戏开发
  • 重庆綦江网站制作公司电话网站运营费用预算
  • 单招网站开发免费搭建网站平台
  • 网站开发设计合同范本网站404页面的作用