為什麼這篇c#視窗程式設計鄉民發文收入到精華區:因為在c#視窗程式設計這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者percussionsd (我在墾丁*天氣晴)看板C_Sharp標題[問題] C#視窗程式設計的...
哈囉~~各位前輩...
這學期最後幾堂程式設計課
老師開始讓我們用C#寫視窗程式設計
但是很多東西都要靠自己摸囉...
然後我們這次是要在panel這個容器中
置入兩個彈跳球...
速度、方向、起始位置都是給使用者輸入
然後程式執行的時候...
會有地方要顯示變動的x、y軸數值...
方向只有四種右斜上(45度)、左斜上(135度)、左斜下(225度)、右斜下(315度)
樣子如圖:
http://www.wretch.cc/album/show.php?i=percussionsd&b=1&f=1876978855&p=30
但是因為老師沒有說怎樣使用...
我自己用一用...還是不行
上網好像又很少這方面教學
我的問題是...
那些要輸入的地方...還有要選角度的地方
輸入and選完之後...按Enter開始執行
但是那幾個box應該要怎樣設定??
然後如何跟開始那個按鈕作連結??
然後我的球是要在那個panel裡面反彈...像螢幕保護程式那樣
但是我球的速度好像都不快...
我看到助教示範的程式...都跑很快
我的timer的interval設定為1(使用者未輸入時)還是不是很快...
我讓球開始與反彈的寫法是...
private int xdirt=1;
private int ydirt=1;
private void timer1_Tick(object sender, EventArgs e)
{
label4.Location = new Point(label4.Location.X + xdirt,
label4.Location.Y - ydirt);
if (label4.Location.Y - ydirt == 0) ydirt *= -1;
else if (label4.Location.X + xdirt >= 370) xdirt *= -1;
else if (label4.Location.Y - ydirt == 281) ydirt *= -1;
else if (label4.Location.X+xdirt ==0)xdirt *= -1;
}
另一個問題是...show出x、y值...隨著球變動而變動
這是怎麼做出來的呢??
我之前是先拉近兩個label...
然後在程式碼內設定這兩個label分別為label4.Location.X、label4.Location.Y
Debug出現錯誤...印象是說int不能轉為string之類的
但是我有加上轉換 ,把label型態轉為int32 Parse(label1.Text);
但是還是有問題...
不知道應該要怎樣做呢??
最後再請問...
雖然老師只是想說...
一般我們學程式都是文字介面
所以想讓我們學些視窗程式設計
這樣比較有趣...
今天去書局逛了一下
好像大部份書講到視窗程式設計...都只有一章
請問有沒有可以推薦的書呢??
網路上除了MSDN之外...好像很少教學網站...
開始對這個很有興趣
我忘記在哪裡看到...
有人說c#跟JAVA很像...
那JAVA的視窗設計...要用J#?還是用C#也可以?
非常謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.138.130.239
※ 編輯: percussionsd 來自: 220.138.130.239 (06/07 23:21)