こんにちは
1 つの大きな楕円に 40 個の楕円を描きたい。それは奇妙です。
for (int i = 0; i < 40; i++)
{
{
{
Random r = new Random();
int distance = r.Next(0, 10000);
var rv = r.Next(0, 359);
var x = Math.Sin(rv * Math.PI / 180) * 225;
rv = r.Next(0, 359);
var y = Math.Cos(rv * Math.PI / 180) * 225;
Ellipse e = new Ellipse();
e.Fill = new SolidColorBrush(Color.FromArgb(255, (byte)(counter * 5), (byte)(counter * 3), (byte)(counter * 1)));
e.Margin = new Thickness(y, -150 + x, 0, 0);
e.Width = 25;
e.Height = 25;
counter++;
PointsGrid.Children.Add(e);
}
}
}
このコードは、7、8 個、場合によっては 9 個の楕円しか描画しません。しかし、コードに追加の行を追加すると:
for (int i = 0; i < 40; i++)
{
{
{
Random r = new Random();
int distance = r.Next(0, 10000);
var rv = r.Next(0, 359);
var x = Math.Sin(rv * Math.PI / 180) * 225;
rv = r.Next(0, 359);
var y = Math.Cos(rv * Math.PI / 180) * 225;
Ellipse e = new Ellipse();
e.Fill = new SolidColorBrush(Color.FromArgb(255, (byte)(counter * 5), (byte)(counter * 3), (byte)(counter * 1)));
e.Margin = new Thickness(y, -150 + x, 0, 0);
e.Width = 25;
e.Height = 25;
counter++;
PointsGrid.Children.Add(e);
MessageBox.Show(""); // Additional line
}
}
}
表示するメッセージ ボックスを追加し、それらすべてで [OK] を押すと、40 個すべての楕円が表示されます...
問題は、それがどのようになるか、どうすれば修正できるかです。