Answer (the original code in C#: Rotate picture in Winforms) + it's useless at this moment because of bluring and memory usage increasing:
private: System::Void spinButton_Click(System::Object^ sender, System::EventArgs^ e) {
pictureBox1->Image = RotateImage(pictureBox1->Image, 15);
}
public: Image^ RotateImage(Image^ img, float rotationAngle)
{
//create an empty Bitmap image
Image^ bmp = Image::FromFile("rouletteWheel.png");
//turn the Bitmap into a Graphics object
Graphics^ gfx = Graphics::FromImage(bmp);
//now we set the rotation point to the center of our image
gfx->TranslateTransform((float)bmp->Width / 2, (float)bmp->Height / 2);
//now rotate the image
gfx->RotateTransform(rotationAngle);
gfx->TranslateTransform(-(float)bmp->Width / 2, -(float)bmp->Height / 2);
//set the InterpolationMode to HighQualityBicubic so to ensure a high
//quality image once it is transformed to the specified size
gfx->InterpolationMode = System::Drawing::Drawing2D::InterpolationMode::HighQualityBicubic;
//now draw our new image onto the graphics object
gfx->DrawImage(img, 0, 0);
//dispose of our Graphics object
gfx->~Graphics();
//return the image
return bmp;
}
But there's 1 problem, after a couple of rotations image becomes blurry.