2013-08-25 37 views
1

我試圖編寫一個程序來顯示Wii遙控器與一個PictureBox的旋轉。當Wii遙控器在X軸上旋轉時,Wii遙控器的圖片也會旋轉。旋轉的值已經顯示在文本框中,它看起來像這樣:0.109243284720305-0.132414335在一個PictureBox中旋轉一個圖像的值

我將如何使用這些值來旋轉顯示的圖像?

+0

如何檢查,如果<0,則向左旋轉和> 0,向右旋轉,或這是它應該旋轉的方式。 – user959631

+0

我不知道如何旋轉圖片本身就是問題所在。另外,它不應該只是說'如果'左'或'右',它應該顯示模擬旋轉。 –

回答

2

創建自定義的控制從PictureBox的繼承和重寫的OnPaint虛方法作畫,因爲你需要Wiimote的位圖:

public partial class WiiMoteControl: PictureBox { 

    public Bitmap wiimote; 
    private float _angle; 
    public float Angle { 
     get { return _angle; } 
     set { _angle = value; Invalidate(); } 
    } 

    protected override void OnPaint(PaintEventArgs pe) { 
     base.OnPaint(pe); 
     pe.Graphics.ResetTransform(); 
     pe.Graphics.TranslateTransform(Size.Width/2, Size.Height/2); 
     pe.Graphics.RotateTransform(Angle); 
     pe.Graphics.TranslateTransform(-Size.Width/2, -Size.Height/2); 
     if (wiimote != null) { 
      pe.Graphics.DrawImage(wiimote, 0, 0, Size.Width, Size.Height); 
     } 
    } 
} 
+0

我該如何實施?我是否創建自定義控件?我不知道該把代碼放在哪裏。 –

+1

將此代碼作爲類添加到您的項目並解決其依賴性後,會將該控件添加到工具箱中,並且您將能夠在設計模式下將其用於將控件添加到表單中 – Blau

+0

好吧,我對此很不好。解決依賴關係是什麼意思? –