none
(Vb2008)在範圍內選取物件 RRS feed

  • 問題

  • 請問如何在一定的矩形範圍內,找出範圍內有哪些控制項
    我現在是使用ForEach迴圈一個一個比Location
    可是好像很慢
    想請問有沒有更好的方法?
    2010年6月10日 上午 11:43

解答

    • 已標示為解答 Lolota Lee 2010年6月17日 上午 09:15
    2010年6月10日 下午 01:37
  • 一般貪食蛇都是區塊方式設計,那麼針對區塊轉成 2D n * m 的邏輯陣列,存放是否有障礙物,再針對身體判斷就完成了。

    範圍內選取物件請先看 Region 類別及其方法,不過在貪食蛇上用不到,因為用到的話,通常表示你的演算法這門課修不好。


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已標示為解答 Lolota Lee 2010年6月17日 上午 09:15
    2010年6月10日 下午 02:51
  • Hi,

    如果你是一點一點去跑

    那蛇就變成一個線體了

    你要判斷的東西也不會很複雜

    跟一格一格的方式一樣

    都不用判斷上下左右邊界

    可能還更好處理

    因為像是Rectangle.Contain甚至是GDI+中的類別

    都可以判斷某點是否在某個區塊


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 Lolota Lee 2010年6月17日 上午 09:15
    2010年6月10日 下午 03:47

所有回覆

  • Hi,

    你的矩形範圍是用畫的還是怎樣產生的?

    不能把控制項放至矩形容器?


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    2010年6月10日 下午 12:28
  • 現在再練習做[貪食蛇]

    我是用PictureBox 和 Button

    是想說 用滑鼠框一個範圍

    然後能知道那個範圍 有哪些控制項

    另外就是想做"碰撞"的方法

    因為 蛇的頭 我是用 picture 所以是一個方型

    想說能夠找出 蛇頭的方型 裡面 碰到哪些物件

    而目前我的方法是 每走一步 從頭判斷到尾 所以 如果物件多就變很慢

    想說能不能就只要針對 "蛇頭" 附近的物件作處理 這樣會快一點

    2010年6月10日 下午 01:27
    • 已標示為解答 Lolota Lee 2010年6月17日 上午 09:15
    2010年6月10日 下午 01:37
  • 一般貪食蛇都是區塊方式設計,那麼針對區塊轉成 2D n * m 的邏輯陣列,存放是否有障礙物,再針對身體判斷就完成了。

    範圍內選取物件請先看 Region 類別及其方法,不過在貪食蛇上用不到,因為用到的話,通常表示你的演算法這門課修不好。


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已標示為解答 Lolota Lee 2010年6月17日 上午 09:15
    2010年6月10日 下午 02:51
  • 謝謝各位大大提供資料,感恩(還在努力中)

    我是想說,一般貪食蛇都是用表格區塊,我是想說用貪食蛇不用表格那樣一格一格下去跑,而是用"一點一點"去跑

    感覺這小小的遊戲可以衍伸很多東西,還蠻有趣的,如迷宮、或打彈珠之類的...所以寫程式還蠻好玩的

    看來在演算法還要多加油!

    2010年6月10日 下午 03:34
  • Hi,

    如果你是一點一點去跑

    那蛇就變成一個線體了

    你要判斷的東西也不會很複雜

    跟一格一格的方式一樣

    都不用判斷上下左右邊界

    可能還更好處理

    因為像是Rectangle.Contain甚至是GDI+中的類別

    都可以判斷某點是否在某個區塊


    謙卑學習,持之以恆,才能不斷的Level Up http://www.dotblogs.com.tw/larrynung/
    • 已標示為解答 Lolota Lee 2010年6月17日 上午 09:15
    2010年6月10日 下午 03:47
  • 謝謝 蹂躪 大
    Public Function Contains ( _
    	pt As Point _
    ) As Boolean
    2010年6月11日 上午 05:06