作者percussionsd (我在垦丁*天气晴)
看板C_Sharp
标题[问题] C#视窗程式设计的疑问
时间Sat Jun 7 23:21:18 2008
哈罗~~各位前辈...
这学期最後几堂程式设计课
老师开始让我们用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)
1F:推 windqqr:label1.Text = label4.Location.X.ToString(); //试试 06/08 00:56
2F:→ EricTsai:不要挑有讲基本语法的书 06/08 01:48
3F:→ percussionsd:谢谢w大... 06/10 21:15
4F:→ percussionsd:谢谢E大...我会去找找的 06/10 21:15