2013-05-30 33 views
-6

我正在制作一个程序,我试图让一个球遵循一条寓言曲线。取代变量

我写了一些代码,其中计时器是变量'a'的值。

public partial class Form1 : Form 
{ 
    Class1 class1; 
    Class2 class2 = new Class2(); 

    public Form1() 
    { 
     Class1 =new Class1(15,a); 
     InitializeComponent(); 

    } 

    public int a = 0; 

    private void Timer1_Tick(object sender, EventArgs e) 
    { 
     a += 1 
    } 
} 

的Class1:因为这个问题是在Class1的其中i希望变量 'x' 至与定时器一起更新

class Class1  
{ 
    private int radie; 
    private int x; 

    public Boll(int p, int c) 
    { 
     this.radie = p; 
     this.x = c; 
    } 

    public void Rita(Graphics g) 
    { 
     SolidBrush Brush = new SolidBrush(Color.White); 
     g.FillEllipse(Brush, x, 100, radie, radie); 
    } 
} 

2级并不重要。现在,当我开始调试时,'x'只获取定时器的值。我想要的图形,在这种情况下,球更新(或类似)的每个时间的“x”的改变

+1

你已经发布*很多代码*只是问一个变量。简化为最小的独立记录。帮助我们帮助你。 –

+0

你的计时器刻度增加1,但我不确定你在这一点上还有什么期望发生。如果你想更新Class1,你必须调用Class1上的某些东西......事实上,我会尽可能地注意到,在Class 1中更新x的唯一方法是不使用“Boll”方法显示被称为我可以看到的任何地方... – Chris

+0

这不是很多的代码,但它是不完整的,明显的语法错误,没有明确的问题。 –

回答

0

在1类中创建的方法等从2时类此

public void Update() 
{ 
// Put logic here to update position for your ball on the curve. 
} 

呼叫更新的值你增加时间。

private void Timer1_Tick(object sender, EventArgs e) 
{ 
    Class1.Update(); 
    a += 1 
} 
+1

他需要有一个类的实例来调用Update()。它应该作为EventArgs的一部分传入。但是他没有在他设置计时器的地方包含代码。 –