看板 C_Sharp 關於我們 聯絡資訊
private int m; private Point[]pos; private Point[]pt; private void setnet() { for(int i=0;i<m;i++) { pos[i].X=pt[i].X; pos[i].Y=pt[i].Y; } } private void button1_click(object sender,RoutedEventArgs e) { m++; pos=new Point[m]; pt=new Point[m]; 這兩行的意思是: 以m的大小(陣列可容納的數目)初始化陣列 所謂的初始化,就是把之前的東西丟掉,建立一個新的東西 你每次點滑鼠都建立一個新的陣列,舊的都被丟掉了, 當然只會存最後一個 正確的做法是把陣列在建構子中初始化 http://msdn.microsoft.com/zh-tw/library/ace5hbzh.aspx 然後在其他的函式中存取值 然後,我猜你下一個問題會問「超出陣列索引」的錯誤訊息 其實,陣列能容納的數目是固定的 在要記錄的點可能有無限多個的狀況下,點的數目遲早會超出陣列大小 所以建議用List 至於List的用法在這邊 http://msdn.microsoft.com/zh-tw/library/6sh2ey19.aspx 在要會用List之前,你要先去把泛型、class的觀念給看過 另外,你應該已經有一些程式的基本觀念了 那建議你去把c#使用手冊徹底看過 把語法的系統徹徹底底的看懂了解 要不然很快就會再遇到問題 http://msdn.microsoft.com/zh-tw/library/67ef8sbd(v=VS.90).aspx if(textbox1==""||texbox1==null) { MessageBox.Show("Null"); } else { pt[m-1].X=Convert.ToDouble(textbox1.text); pt[m-1].Y=Convert.ToDouble(textbox2.text); } } -- 我... 我一點都不糟糕啦!>///< -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.27.109.99 ※ 編輯: F23ko 來自: 163.27.109.99 (04/25 17:47)
dreamday1023:感謝大大的幫忙 我會盡弄清楚的 04/25 20:08
andymai:真是佛心來的... 04/25 23:24
F23ko:因為我還記得我五個月前找不到方向的那狀況 ˋ(′_‵||)ˊ 04/26 00:50
dreamday1023:真的很感謝大大 我是初學者 還有待大大的照顧 04/26 01:17