2013-05-30 36 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的一部分傳入。但是他沒有在他設置計時器的地方包含代碼。 –