我正在做一个学校项目。
目标是用数字创建X轴和Y轴,我可以处理这部分。
问题是,我必须创建numericUpDowns,这将允许我在特定X和Y轴上创建具有特定大小的矩形。大小和位置由numericUpDowns控制。我可以使用一些帮助,因为我不知道任何可以连接两者的命令。
此外,如果有一种方法让轴上的数字重复出现而不必单独编写,那么我也可以使用它。
public void tvary(float x, float y, float polomer, Graphics gr)
{
gr.DrawEllipse(Pens.Black, x, y, polomer, polomer);
gr.DrawEllipse(Pens.Black, x - 15, y - 15, polomer * 2, polomer * 2);
gr.DrawEllipse(Pens.Black, x - 30, y - 30, polomer * 3, polomer * 3);
gr.DrawRectangle(Pens.Red, x-30, y-30, polomer * 3, polomer * 3);
}
现在,矩形的X和Y位置写在代码本身中。我想通过使用图3中显示的numericUpDows来移动矩形。 问题是我不知道该怎么做。
不幸的是,目前我不能发布超过1张图片。
答案 0 :(得分:1)
NumericUpDown
有ValueChanged
ActionEvent。因此,每次更改NumericUpDown
方法中的值时,该操作都将执行。你只需要在ActionEvent的方法中调用你的方法来绘制矩形。所以你需要发送x和y的参数。首先,您需要从NumericUpDown
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
int x = Convert.ToInt16(numericUpDown1.Value);
int x = Convert.ToInt16(numericUpDown2.Value);
tvary(x, y, polomer, gr);
}
代码与第二个numericUpDown
的代码相同。
PS:您可以为numericUpDown
控件设置起始值。