日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

俄罗斯方块游戏笔记(一)——砖块样式配置窗体

發(fā)布時(shí)間:2025/5/22 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 俄罗斯方块游戏笔记(一)——砖块样式配置窗体 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

?

?

一、磚塊樣式配置窗體

第一步 雙擊lbl的paint事件

?

第二步 雙擊lblMode的MouseClick

?

自定義界面反思:

  • 要想改變Label的大小,AutoSize屬性必須改。
  • 不能在第一步后將Graphics Dispose掉,會(huì)報(bào)沒(méi)有參數(shù)的錯(cuò)。
  • 數(shù)組實(shí)例化 int[ , ] arr=new int[5,5];???//表示聲明一個(gè)五行五列的二維數(shù)組(數(shù)組使用前需實(shí)例化)?
  • 調(diào)用數(shù)組時(shí)用arr[x,y]
  • ?int[ , ] arr=new int[5,5];???這個(gè)一定要是全局變量
  • 第二步i提供一個(gè)方法:將屏幕像素轉(zhuǎn)化為磚塊數(shù)組下標(biāo),以至可以用數(shù)組存放這25個(gè)磚塊,達(dá)到用數(shù)組下標(biāo)調(diào)用磚塊的目的。
  • ?   這樣做出來(lái)后,還不是完美的。當(dāng)你最小化頁(yè)面時(shí),這些你選擇的變色了的方塊會(huì)全部消失。我們還需做第三步來(lái)補(bǔ)充。

    ?

    ?

    第三步 在Paint事件中再加入如下代碼

       

      總結(jié): 以完成數(shù)組中保存的各個(gè)方塊的bool值,能夠讓每次重繪時(shí)再現(xiàn)我們之前選好的方塊?

    ??

    第四步 實(shí)現(xiàn)磚塊顏色自定義

  • 拖入一個(gè)ColorDialog
  • 拖入一個(gè)lblColor,修改屬性AutoSize,BorderStyle--Fixed3D,
  • ?雙擊lblColor的Click事件。寫(xiě)入如下代碼:
  •   總結(jié):

  • 要將方塊的顏色定義成一個(gè)全局變量BlockColor.(第二步已經(jīng)定義好了)。
  • 最后一行代碼要寫(xiě),如果不寫(xiě),那么你改變顏色時(shí),已選好的磚塊仍是上次的顏色,不會(huì)立即改變;改變的方塊只是你執(zhí)行顏色操作之后選擇的方塊。
  • 第五步 實(shí)現(xiàn)將方塊的信息儲(chǔ)存,并顯示在ListView控件上。

  • 拖入一個(gè)ListView控件lsvBlockSet,修改屬性View--Details,MultiSelect(一次選中多行)--False,GridLine(顯示格子)--True,Columns--加兩列(編碼與顏色),FullRowSelect(全行選擇)--True.
  • 拖入一個(gè)Button控件btnAdd(添加),雙擊寫(xiě)代碼:
  •   總結(jié):

  • 用一個(gè)blockString存儲(chǔ)方塊信息。eg:0010010110010001000000000
  • 使用大量字符串連接時(shí)用StringBuilder類(lèi),而不是String類(lèi)。最后再轉(zhuǎn)化成String類(lèi),存放在blockString中。
  • StringBuilder的Append方法是向sb對(duì)象中添加一個(gè)子字符。
  • 數(shù)組遍歷的方向是從上到下,而后從左到右。
  • ?

    ?第六步 實(shí)現(xiàn)切換listview選項(xiàng),lblMode可以更新顯示。

  • 雙擊listview的ItemSelectionChanged事件:
  •   總結(jié):?

  • 字符串也是可以索引的,s[i]表示字符串的第i個(gè)元素,i從0開(kāi)始。
  • 將字符串下標(biāo),轉(zhuǎn)化為數(shù)組下標(biāo)。
  • ?

    第七步 實(shí)現(xiàn)刪除按鈕功能,刪除listview中的選項(xiàng)。

    ?

    第八步 實(shí)現(xiàn)lblMode的清空(第七步將listView中刪除一個(gè)條目,可lblMode中還存在該方塊的形象)

  • 拖入一個(gè)清空的按鈕btnClear
  • 雙擊按鈕寫(xiě)如下事件:

  • 在第七步的最后加一行代碼,執(zhí)行這個(gè)按鈕的單擊:
  • ?????

      總結(jié):

  • 用代碼模仿按鈕單擊事件:btnClear.PerformClick();
  • 第九步 添加編輯 “已存儲(chǔ)方塊”的按鈕

      附:?第五步那個(gè)判斷圖案是否已經(jīng)存在的代碼也可以加進(jìn)去。

    ?

    ?

    ?

    ?

    ?

    轉(zhuǎn)載于:https://www.cnblogs.com/xiaobaihappy/archive/2010/11/11/1874930.html

    總結(jié)

    以上是生活随笔為你收集整理的俄罗斯方块游戏笔记(一)——砖块样式配置窗体的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。