我對窗體編碼非常陌生,我試圖製作一個具有三個按鈕(圓形,矩形和線條)的小型圖形,當它獲得一個按鈕作爲輸入時,它將繪製形狀在面板中。 我有這種形狀類繪製一個矩形
class shape
{
public Color color { get; set; }
public int width { get; set; }
public int startx { get; set; }
public int starty { get; set; }
}
具有顏色,寬度和開始位置properties.then我有例如當前矩形類:
class rectangle : shape
{
int length { get; set; }
int width { get; set; }
}
它繼承從形狀類的共享屬性。現在我想在面板中打印一個矩形。我熟悉DrawRectangle
方法和我打印的矩形波紋管:
Pen black = new Pen(Color.Black);
Rectangle rect = new Rectangle(20,20,400,200);
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
g.DrawRectangle(black, rect);
}
,但我不知道如何從class rectangle:shape
繪製一個矩形。我也有問題,從單擊按鈕分配值矩形。 你能幫我嗎?
您需要將MyRectangle轉換爲通用Rectangle或將MyRectangle的值混合到從startx/y計算出的點數組中,並且它的長度和使用DrawPolygon。 我可能會在MyRectangle.GetRectangle()返回System.Drawing.Rectangle – Poody
我應該在矩形類中繪製一個方法嗎?像「void draw(){System.Drawing.Rectangle(startx,starty,length,width);}」但這不起作用 – sara
我相信你的形狀類中寬度的定義應該很可能是厚度因爲不要與你的矩形繼承類(和其他人)的寬度混淆。 –