c#程序设计 猜猜看

原创 2015年07月07日 18:04:33
<Window
        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" mc:Ignorable="d" x:Class="猜猜看.MainWindow"
        Title="MainWindow" Height="440.972" Width="732.462">
    <Grid>
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition MaxHeight="60"/>
                <RowDefinition/>
            </Grid.RowDefinitions>
            <TextBlock Text="猜猜看" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="BlueViolet" FontSize="20"/>
            <Grid Grid.Row="1" >
                <Grid.RowDefinitions>
                    <RowDefinition  MaxHeight="60"/>
                    <RowDefinition Height="240" />
                    <RowDefinition MaxHeight="60"/>
                </Grid.RowDefinitions>
                <Grid Grid.Row="0">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition/>
                        <ColumnDefinition/>
                    </Grid.ColumnDefinitions>
                    <Button x:Name="PicGuessName" Content="猜名字" Margin="100,15" Click="PicGuessName_Click"/>
                    <Button Grid.Column="1" x:Name="NameGuessPIC" Content="猜图片" Margin="100,15" Click="NameGuessPIC_Click"/>
                </Grid>
                <Grid x:Name="Grid_NameGuessPIC" Visibility="Hidden" Grid.Row="1">
                    <Grid.RowDefinitions>
                        <RowDefinition MinHeight="160"/>
                        <RowDefinition MaxHeight="60"/>
                    </Grid.RowDefinitions>
                    <Grid Grid.Row="0">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                        </Grid.ColumnDefinitions>
                        <Image x:Name="Img1" Margin="20,15,10,15" MouseDown="Img2_MouseDown"/>
                        <Image x:Name="Img2" Grid.Column="1" Margin="15,15" MouseDown="Img2_MouseDown"/>
                        <Image x:Name="Img3" Grid.Column="2" Margin="15,15" MouseDown="Img2_MouseDown"/>
                    </Grid>
                    <Grid Grid.Row="1">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                        </Grid.ColumnDefinitions>
                        <TextBlock x:Name="TBlock_Name" Grid.Column="1" Width="150" Margin="2" HorizontalAlignment="Left"/>
                        <TextBlock Grid.Column="0" Width="50" Margin="2" HorizontalAlignment="Right" Text="姓名:" FontSize="15" TextAlignment="Right"/>
                    </Grid>

                </Grid>
                <Grid Grid.Row="1" x:Name="Grid_PicGuessName" Visibility="Visible">
                    <Grid.RowDefinitions>
                        <RowDefinition MinHeight="160"/>
                        <RowDefinition MaxHeight="60"/>
                    </Grid.RowDefinitions>
                    <Image Name="GuessImg" Margin="260,10"/>
                    <Grid Margin="0,175,0,5" Grid.RowSpan="2">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                        </Grid.ColumnDefinitions>
                        <TextBlock x:Name="TBlock_Guess1" Margin="5" Width="120" MouseDown="TBlock_Guess1_MouseDown"/>
                        <TextBlock x:Name="TBlock_Guess2" Grid.Column="1" Margin="5" Width="120" MouseDown="TBlock_Guess1_MouseDown"/>
                        <TextBlock x:Name="TBlock_Guess3"  Grid.Column="2" Margin="57,5,64,5" Width="120" MouseDown="TBlock_Guess1_MouseDown"/>
                    </Grid>
                </Grid>
            </Grid>
        </Grid>
    </Grid>
</Window>
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
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 猜猜看
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {

        public MainWindow()
        {
            InitializeComponent();
           
        }

        
        #region 按钮事件
        private void PicGuessName_Click(object sender, RoutedEventArgs e)
        {
            Grid_NameGuessPIC.Visibility = System.Windows.Visibility.Hidden;
            Grid_PicGuessName.Visibility = Visibility;
            bing_Name();
        }

        private void NameGuessPIC_Click(object sender, RoutedEventArgs e)
        {
            Grid_NameGuessPIC.Visibility = Visibility;
            Grid_PicGuessName.Visibility = System.Windows.Visibility.Hidden;
            bing_Pic();
        }
        #endregion


        // 加载图片信息
        public string[] LoadPic() {
             string Path =@"D:\old\Project\Old\项目\猜猜看\猜猜看\Image\";
             string[] imageName = Directory.GetFiles(Path);
             return imageName;
        }

        // 猜图片_绑定数据
        public void bing_Pic() {
              

            //  随机抽取照片
            Random random = new Random();
            int[] num={0,0,0};
            for (int i = 0; i < 3;) {
                int k = random.Next(8);
                if (k != 0 && !num.Contains(k-1))
                {
                    num[i] = k-1;
                    i++;
                }
            }


            //  获取照片路径
            string[] imageNam = LoadPic();


            // 绑定照片控件
            string name = imageNam[num[0]];
            Uri url = new Uri(name, UriKind.Absolute);
            BitmapImage bitmap = new BitmapImage(url);
            Img1.Source = bitmap;
            //     Img1.Source = new BitmapImage(new Uri(imageNam[num[0]], UriKind.Absolute));

            Img2.Source = new BitmapImage(new Uri(imageNam[num[1]]));
            Img3.Source = new BitmapImage(new Uri(imageNam[num[2]]));

            // 绑定文本控件

           int n = random.Next(3);
           Match match = Regex.Match(imageNam[num[n]],@"[0-9]{12}(\w{2,})");
           TBlock_Name.Text = match.Groups[1].Value;
        }


        // 猜名字_数据绑定
        public void bing_Name() {
            //  随机抽取照片
            Random random = new Random();
            int[] num = { 0, 0, 0 };
            for (int i = 0; i < 3;)
            {
                int k = random.Next(8);
                if (k!=0&&!num.Contains(k-1)) {
                    num[i] = k-1;
                    i++; 
                }
                
            }


            //  获取照片路径
            string[] imageNam = LoadPic();

           
            //  绑定文本控件
            string[] name = {"","",""};
            for (int i = 0; i < 3; i++) {

               
            }

            TBlock_Guess1.Text = name[0];
            TBlock_Guess2.Text = name[1];
            TBlock_Guess3.Text = name[2];


            // 绑定图片控件
             int m = random.Next(3);
             GuessImg.Source = new BitmapImage(new Uri(imageNam[num[m]]));
             
             
        }

        private void Img2_MouseDown(object sender, MouseButtonEventArgs e)
        {

            Image img = (Image)sender;
            Match match = Regex.Match(img.Source.ToString(), @".+([0-9]{12})([\w]{2,})\.jpg");
            if (TBlock_Name.Text == match.Groups[2].Value)
            {
                MessageBox.Show("猜对了");
            }
            else {
                MessageBox.Show("猜错了");
            }
            
        }

        private void TBlock_Guess1_MouseDown(object sender, MouseButtonEventArgs e)
        {
            TextBlock TB = (TextBlock)sender;
            
            Match match = Regex.Match( GuessImg.Source.ToString(), @".+([0-9]{12})([\w]{2,})\.jpg");

            if (TB.Text == match.Groups[2].Value) { MessageBox.Show("你猜对了"); } else { MessageBox.Show("猜错了"); }
        }
     }
}


C#程序设计-猜猜看

程序介绍: 该程序设计实现了随机显示三张学生照片一个名字学号猜其中哪张照片与名字对应的功能,开发平台是用jetbrains公司旗下一款JavaScript 开发工具WebStrom,开发语言用html...
  • hehelinzhihao
  • hehelinzhihao
  • 2015年07月07日 20:19
  • 239

C#程序设计——猜猜看

程序介绍:             在我们的学习生活或者在我们的工作生活中经常遇到这样的问题,在学校,老师在给学生上课的时候叫不出学生的名字,同学之间在路上相遇的时候虽然有过几面之缘,却还不认识彼此,...
  • Real_young
  • Real_young
  • 2015年06月28日 09:07
  • 678

<C# 程序设计>之猜猜看

程序主界面 程序文件目录 (xcode开发程序模板自动生成目录,内含各种方法可以重写,而我的程序是单界面,所以只用一个ViewController, .h为接口文件, .m为实现文件,代码...
  • DSGGGGGG
  • DSGGGGGG
  • 2015年07月07日 21:40
  • 406

《C#程序设计》猜猜看小游戏制作

由于对C#的应用不熟悉,我临时改用JSP制作本次课程设计。在JSP页面,随机显示一张英雄联盟的英雄图片,通过下拉复选框选择你心中的答案,点击提交后显示本次猜测结果,通过超链接又可以返回本页面继续游戏。...
  • py1994829
  • py1994829
  • 2015年07月07日 12:52
  • 659

《C#程序设计》猜猜看游戏开发总结

《猜猜看》游戏开发总结: 开发目的: 在校园中,我们经常遇到某个学生叫自己老师,但老师却想不出该学生的名字,彼此显得有点尴尬。不仅师生之间的互动交流会有这样的问题存在,就连我们身边的同学之间也有这样的...
  • qy_WLX
  • qy_WLX
  • 2015年06月29日 09:46
  • 627

《C#程序设计》第六次作业:《猜猜看》游戏

本周作业布置地址:http://user.qzone.qq.com/303727350/blog/1433931626。
  • u011524722
  • u011524722
  • 2015年06月14日 23:49
  • 457

c#课程设计---猜猜看游戏

1:游戏要求 1. 随机显示 一个名字 与 若干张相片(如3张),选择正确的相片。 2. 记录老师对每个学生的认识概率P,并根据认识概率,确定“猜猜看”游戏中学生出现的频率。          ...
  • guojingmei
  • guojingmei
  • 2015年07月04日 16:01
  • 986

C#程序设计开发总结(猜猜看游戏开发)

《C#程序设计》开发总结 李 杰 信息学院;物联1121;201211672114 一、课程设计的任务     设计一个猜数字游戏程序,该游戏可以由程序产生随机数字,玩家通过输入数字来匹配程序...
  • lgcss09xl7313
  • lgcss09xl7313
  • 2015年07月08日 10:49
  • 830

C#课程设计---猜猜看

1.最终成果 1.1关键界面截图 (1)一开始运行程序是一个空白的页面,按下开始猜猜看按钮,随机出现三张照片 (2)界面出现目标名字的猜对次数、猜错次数、猜测总次数还有猜错的概率 (3)点...
  • u010580422
  • u010580422
  • 2015年07月01日 23:38
  • 418

大话C#程序设计

1.C#        C#和Java都是完全面向对象的编程语言。面向对象语言中,完全可以把现实世界的任何事物看成一个对象,理解了对象这个概念,学习面向对象的知识就可以说轻车熟路了。        2...
  • jiuqiyuliang
  • jiuqiyuliang
  • 2013年02月23日 11:12
  • 3716
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:c#程序设计 猜猜看
举报原因:
原因补充:

(最多只允许输入30个字)