• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      C#WINFORM教學(xué)案例

      2017-11-17 11:07:17紀(jì)輝進(jìn)
      科技視界 2017年19期
      關(guān)鍵詞:白子水平線落子

      紀(jì)輝進(jìn)

      教學(xué)中采用生活化的案例,能提升教學(xué)效果,實(shí)現(xiàn)后讓學(xué)生有成就感,提升學(xué)習(xí)興趣,讓興趣轉(zhuǎn)化為學(xué)習(xí)動(dòng)力。

      很多學(xué)校的計(jì)算機(jī)軟件技術(shù)專業(yè)課程中,C、C#是其專業(yè)核心課程,本文以C#程序設(shè)計(jì)語言為例,講述五子棋的實(shí)現(xiàn)過程。

      五子棋棋盤為15*15的方格,棋子為黑子和白子,贏棋規(guī)則為無論哪一方棋子在橫向、縱向或斜向五子無間隔連成線即贏。

      1 棋盤的繪制

      用PS軟件繪制一張圖片,作為窗體的背景棋盤,棋盤為正方形,根據(jù)顯示器高度來繪制水平線,上下邊緣留一些像素的空余,不然棋子落到太邊緣不好看,剩余高度均分畫15條水平線;用同樣的方法繪制垂直方向的線,顯示器寬度大于高度,垂直線可以是PS中水平線的90度翻轉(zhuǎn)。水平線垂直方向居中,垂直線水平方向居中。

      2 棋子的繪制

      用PS軟件分別繪制黑子和白子,棋子的直徑要比棋盤格小一點(diǎn),這樣才不至于落子后在棋盤上占的太滿,為美觀給棋子添加斜面浮雕和高光效果,這樣棋子看起來更立體真實(shí)。黑白子圖片分別保存為png格式。

      3 落子定位

      鼠標(biāo)在窗體中單擊的時(shí)候落一顆子,棋子用按鈕做,按鈕用黑白子的圖片做背景,設(shè)置一變量,隨著落子遞增,用變量奇偶性決定按鈕背景圖的黑白背景圖屬性。

      鼠標(biāo)單擊點(diǎn)并不是落子的真正坐標(biāo),因單擊點(diǎn)坐標(biāo)跟棋盤線有間距,棋子應(yīng)落在橫豎線交叉點(diǎn),單擊點(diǎn)離哪個(gè)交叉點(diǎn)近就落在哪個(gè)交叉點(diǎn)。用鼠標(biāo)單擊點(diǎn)的橫坐標(biāo)減去一個(gè)合適的常量對(duì)橫坐標(biāo)做修正,再模棋盤格寬度得到的值為棋子落在第幾根豎線上,用得到的整型數(shù)乘棋盤格寬度得到的橫坐標(biāo)一定在交叉點(diǎn)上;同樣的方法可以得到棋子落在第幾根橫向上;配合一個(gè)15行15列的二維整型數(shù)組,初始值為0(對(duì)應(yīng)橫縱線交錯(cuò)沒落子),落黑子可記為1,落白子可記為2,落子前檢查二維數(shù)組對(duì)應(yīng)元素,為0的才可以落子。這樣就解決了落什么子和定位在哪里的問題。

      4 悔棋

      前面已經(jīng)設(shè)置一變量記錄下了多少顆棋子,每下一顆棋子,就是向當(dāng)前窗體添加一個(gè)按鈕控件,用List集合記錄按鈕控件,悔棋的時(shí)候?qū)ist集合中記錄的最后一個(gè)按鈕控件從當(dāng)前窗體中去掉即可。

      5 勝負(fù)判斷

      每次落子后都需要判斷黑子或白子是否贏了,判斷贏棋的標(biāo)準(zhǔn)為橫向是否有五個(gè)相鄰的同樣顏色的棋子,縱向是否有五個(gè)相鄰的同樣顏色的棋子,斜向是否有五個(gè)相鄰的同樣顏色的棋子。斜向勝負(fù)的判斷分為左斜,右斜兩個(gè)方向的判斷。

      6 實(shí)現(xiàn)代碼

      7 結(jié)束語

      五子棋這個(gè)例子涉及到了C#中變量的聲明、創(chuàng)建和使用;二維數(shù)組的聲明、創(chuàng)建和使用,控件對(duì)象,對(duì)象的背景、大小等屬性;分支、循環(huán)流程控制語句;方法、List集合等基本知識(shí),幾乎囊括了C#基礎(chǔ)編程的所有知識(shí)點(diǎn),整個(gè)項(xiàng)目案例做下來,學(xué)生在做中學(xué),學(xué)中做,不知不覺就掌握了所有知識(shí)點(diǎn);此案例又具備趣味性,能提升學(xué)生學(xué)習(xí)的興趣,興趣是最好的老師,讓學(xué)生體會(huì)學(xué)習(xí)的樂趣,學(xué)習(xí)和教學(xué)也不那么枯燥,近兩年我在教學(xué)中采用此項(xiàng)目案例,效果不錯(cuò)。endprint

      猜你喜歡
      白子水平線落子
      天津詩人(2019年3期)2019-11-13 19:29:53
      最好的數(shù)學(xué)老師
      琴(外一首)
      詩選刊(2019年8期)2019-08-12 02:29:36
      攝影小技巧,教你拍出不一樣的大片
      落子山東,意在全局
      金橋(2018年4期)2018-09-26 02:24:54
      藥食同源蔬菜——白子菜
      蔬菜(2016年8期)2016-10-10 06:49:14
      90后唐丹:人生如棋,落子不悔
      金色年華(2016年8期)2016-02-28 01:40:30
      《花千骨》小說原著與電視劇版結(jié)局
      基于優(yōu)先度的改進(jìn)最低水平線排樣算法
      白子國散議
      应城市| 临颍县| 郎溪县| 吴旗县| 旬邑县| 科技| 时尚| 娄烦县| 方正县| 驻马店市| 民丰县| 华池县| 屏边| 罗甸县| 钦州市| 郴州市| 无为县| 沅江市| 固始县| 白山市| 运城市| 盐池县| 宜川县| 噶尔县| 北流市| 新泰市| 五寨县| 宕昌县| 平舆县| 和龙市| 襄汾县| 莫力| 绩溪县| 广平县| 宁化县| 龙岩市| 伊金霍洛旗| 石渠县| 巫山县| 信丰县| 积石山|