看板 C_Sharp 關於我們 聯絡資訊
frmSecond.cs public partial class frmSecond : Form { public human safe { set; get; } // 其他都一樣 frmFirst.cs public void btnNext_Click(object sender, EventArgs e) { human safe = new human(); safe.age = Convert.ToInt32(txtAge.Text); if (safe.age >= 20 == safe.age <= 120) { this.Hide(); frmSecond f2 = new frmSecond(); f2.safe = safe; f2.Show(); } 這應該算是最小幅度的修改了 你的程式還有其他的問題... 不過那就看你需不需要再改吧 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.171.46
b9433056:謝啦~目前是可以了~但~有其他的問題? 05/01 20:55
b9433056:可以指出來嗎?不怎麼想給老師抓毛病~謝謝 05/01 20:55
其實也不算是很嚴重的問題啦 你的「下一步」跟「上一步」都是用 new xxxform 來做 因此程式會不斷在記憶體裡面產生新的 form 如果你反覆按100次的下一步跟上一步 記憶體裡面就各有100個frmFirst跟frmSecond了 雖然C#有自動回收的機制,因此不必擔心會把記憶體吃到完,但這種寫法總不算很好 XD ※ 編輯: james732 來自: 140.117.171.46 (05/01 21:07)
b9433056:那最好的方法是怎麼寫?上課是教這樣哩我也不怎麼清楚 05/01 21:10
如果上課是這麼教的話,那應該就不需要改了 XD
b9433056:還有~我想請問一下~如果要強制文字方塊為數字該怎麼寫 05/01 21:11
如果你在文字方塊裡面輸入非數字後按button,應該會出現一些訊息吧? 你可以把這些訊息拿去google找找看要怎麼處理 提示: try {???} catch(???) {???} ※ 編輯: james732 來自: 140.117.171.46 (05/01 21:14)
b9433056:如果把那個隱藏hide改為釋放dispose~ 05/01 21:15
b9433056:應該就沒有所謂記憶體吃到完的問題吧? 05/01 21:15
我會覺得 Close() 可能比較適合一點 ※ 編輯: james732 來自: 140.117.171.46 (05/01 21:17)
b9433056:都試過了~這樣會變成整個專案結束~ 05/01 21:19
對耶,我忘記會有這個問題了 XD ※ 編輯: james732 來自: 140.117.171.46 (05/01 21:23)
apiod:VB有個IsNumeric函數可以用來判斷字串是否為數字 05/01 21:20
b9433056:可是這是C#的程式~VB的函數應該沒辦法拿過來用吧? 05/01 21:22
apiod:你只要把 Microsoft.VisualBasic加入參考就可以把它拿來用了 05/01 21:24
b9433056:a大說的是不是最上面那排using 05/01 21:31
apiod:右邊方案總管裡有個參考,右鍵->加入參考 05/01 21:33