Ga naar inhoud

c# (visual studio) declare a body


Street Boy

Aanbevolen berichten

Dit is een default constructor zonder parameters.

Heb je de uitwerking van de methode figuur() ook opgenomen in de code?

Kan je de volledige code van de class figuur hier plakken of in een kladblokbestand zetten en als bijlage toevoegen aan je bericht?

Als je de code in je bericht wil plakken, reageer dan via de knop meer opties, Op die pagina kan je de tag "code" gebruiken.

Link naar reactie
Delen op andere sites

Dit staat onder figuur.cs

using System;
using System.Collections;
using System.Linq;
using System.IO;
using System.Text;
using System.Drawing;
using System.Windows.Forms;

namespace TekenApplicatie
{
   //class Figuur
   //{
   //}
   public class Figuur
   {
       // Fields
       protected Pen pen;
       protected Point punt1;
       protected Point punt2;
       // Methods
       public Figuur();
       public Figuur(Point punt1, Point punt2, Pen pen);
       public virtual void Teken(Graphics g);
       // Properties
       public Pen Pen { get; set; }
       public Point Punt1 { get; set; }
       public Point Punt2 { get; set; }
   }
}

Dit staat onder form.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace TekenApplicatie
{
   public partial class TekenApplicatie : Form
   {
       public TekenApplicatie()
       {
           InitializeComponent();
           this.gVenster = this.pTekenpaneel.CreateGraphics();
           System.Collections.ArrayList FiguurLijst = new System.Collections.ArrayList();
       }
       private void miAfsluiten_Click(object sender, EventArgs e)
       {
           this.Close();
       }
       private void miBlauw_Click(object sender, EventArgs e)
       {
           this.CheckmiKleur(Kleur.Blauw);
           this.mijnPen.Color = Color.Blue;
           this.brush.Color = Color.Blue;
           this.Tekenalles();
       }
       private void CheckmiDikte(Dikte dikte)
       {
           foreach (ToolStripMenuItem item in this.miDikte.DropDownItems)
           {
               item.Checked = false;
           }
           foreach (RadioButton button in this.gbDikte.Controls)
           {
               button.Checked = false;
           }
           switch (dikte)
           {
               case Dikte.Dun:
                   this.miDun.Checked = true;
                   this.rbDun.Checked = true;
                   return;
               case Dikte.Medium:
                   this.miMiddel.Checked = true;
                   this.rbMiddel.Checked = true;
                   return;
               case Dikte.Dik:
                   this.miDik.Checked = true;
                   this.rbDik.Checked = true;
                   return;
           }
       }
       private void CheckmiFiguur(Tekening tekening)
       {
           foreach (ToolStripMenuItem item in this.miFiguur.DropDownItems)
           {
               item.Checked = false;
           }
           foreach (RadioButton button in this.gbFiguur.Controls)
           {
               button.Checked = false;
           }
           switch (tekening)
           {
               case Tekening.Lijn:
                   this.miLijn.Checked = true;
                   this.rbLijn.Checked = true;
                   return;
               case Tekening.Rechthoek:
                   this.miRechthoek.Checked = true;
                   this.rbRechthoek.Checked = true;
                   return;
               case Tekening.Driehoek:
                   this.miDriehoek.Checked = true;
                   this.rbDriehoek.Checked = true;
                   return;
               case Tekening.Cirkel:
                   this.miCirkel.Checked = true;
                   this.rbCirkel.Checked = true;
                   return;
               case Tekening.Ellips:
                   this.miEllips.Checked = true;
                   this.rbEllips.Checked = true;
                   return;
           }
       }
       private void CheckmiKleur(Kleur kleur)
       {
           foreach (ToolStripMenuItem item in this.miKleur.DropDownItems)
           {
               item.Checked = false;
           }
           foreach (RadioButton button in this.gbKleur.Controls)
           {
               button.Checked = false;
           }
           switch (kleur)
           {
               case Kleur.Zwart:
                   this.miZwart.Checked = true;
                   this.rbZwart.Checked = true;
                   return;
               case Kleur.Rood:
                   this.miRood.Checked = true;
                   this.rbRood.Checked = true;
                   return;
               case Kleur.Groen:
                   this.miGroen.Checked = true;
                   this.rbGroen.Checked = true;
                   return;
               case Kleur.Blauw:
                   this.miBlauw.Checked = true;
                   this.rbBlauw.Checked = true;
                   return;
           }
       }
       private void miCirkel_Click(object sender, EventArgs e)
       {
           this.nPunt = 0;
           this.tekening = Tekening.Cirkel;
           this.CheckmiFiguur(Tekening.Cirkel);
           this.TekenAlles();
       }
       private void miDriehoek_Click(object sender, EventArgs e)
       {
           this.nPunt = 0;
           this.tekening = Tekening.Driehoek;
           this.CheckmiFiguur(Tekening.Driehoek);
           this.TekenAlles();
       }
       private void miDik_Click(object sender, EventArgs e)
       {
           this.CheckmiDikte(Dikte.Dik);
           this.Pen.Width = 10f;
           this.TekenAlles();
       }
       private void miDun_Click(object sender, EventArgs e)
       {
           this.CheckmiDikte(Dikte.Dun);
           this.Pen.Width = 1f;
           this.TekenAlles();
       }
       private void miEllips_Click(object sender, EventArgs e)
       {
           this.nPunt = 0;
           this.tekening = Tekening.Ellips;
           this.CheckmiFiguur(Tekening.Ellips);
           this.TekenAlles();
       }
       private void miGroen_Click(object sender, EventArgs e)
       {
           this.CheckmiKleur(Kleur.Groen);
           this.pen.color = Color.Green;
           this.brush.color = Color.Green;
           this.TekenAlles();
       }
       private void miLijn_Click(object sender, EventArgs e)
       {
           this.nPunt = 0;
           this.tekening = Tekening.Lijn;
           this.CheckmiFiguur(Tekening.Lijn);
           this.TekenAlles();
       }
       private void miOpenen_Click(object sender, EventArgs e)
       {
           OpenFileDialog ofdOpen = new OpenFileDialog();
           ofdOpen.Filter = "drw files (*.drw|*.drw";
           ofdOpen.InitialDirectory = @"d:\";
           if (ofdOpen.ShowDialog() == DialogResult.OK)
           {
               this.gVenster.Clear(Color.White);
               this.fig.Wissen();
               this.fig.Inladen(ofdOpen.FileName, this);
           }
       }
       private void miOpslaan_Click(object sender, EventArgs e)
       {
           SaveFileDialog sfdOpslaan = new SaveFileDialog();
           sfdOpslaan.Filter = "drw files (*.drw)|*.drw";
           sfdOpslaan.InitialDirectory = @"d:\";
           if (sfdOpslaan.ShowDialog() == DialogResult.OK)
           {
               this.fig.Bewaar(sfdOpslaan.FileName);
           }
       }
       private void pTekenpaneel_MouseClick(object sender, MouseEventArgs e)
       {
           this.cPunt[this.nPunt++] = new Point(e.X, e.Y);
           this.gVenster.FillRectangle(this.brush, e.X, e.Y, 1, 1);
           switch (this.tekening)
           {
               case Tekening.Lijn:
                   if (this.nPunt != 2)
                   {
                       break;
                   }
                   this.TekenLijn();
                   return;
               case Tekening.Rechthoek:
                   if (this.nPunt != 2)
                   {
                       break;
                   }
                   this.TekenRechthoek();
                   return;
               case Tekening.Driehoek:
                   if (this.nPunt != 3)
                   {
                       break;
                   }
                   this.TekenDriehoek();
                   return;
               case Tekening.Cirkel:
                   if (this.nPunt != 2)
                   {
                       break;
                   }
                   this.TekenCirkel();
                   return;
               case Tekening.Ellips:
                   if (this.nPunt != 2)
                   {
                       this.TekenEllips();
                   }
                   break;
               default:
                   return;
           }
       }
       private void miRechthoek_Click(object sender, EventArgs e)
       {
           this.nPunt = 0;
           this.tekening = Tekening.Rechthoek;
           this.CheckmiFiguur(Tekening.Rechthoek);
           this.TekenAlles();
       }
       private void miRood_Click(object sender, EventArgs e)
       {
           this.CheckmiKleur(Kleur.Rood);
           this.MijnPen.Color = Color.Red;
           this.brush.Color = Color.Red;
           this.TekenAlles();
       }
       public void TekenAlles()
       {
           for (Figuur figuur = this.fig.Volgende(); figuur != null;
               figuur = this.fig.Volgende())
           {
               figuur.Teken(this.gVenster);
           }
           this.Fig.Reset();
       }
       private void TekenCirkel()
       {
           int num = (int)Math.Sqrt(Math.Pow((double)(this.cPunt[1].X - this.cPunt[0].X), 2.0) + Math.Pow((double)(this.cPunt[1].Y - this.cPunt[0].Y), 2.0));
           this.cPunt[0].Offset(-num, -num);
           this.cPunt[1] = this.cPunt[0];
           this.cPunt[1].Offset(2 * num, 2 * num);
           Ellips f = new Ellips(this.cPunt[0], this.cPunt[1], this.MijnPpen);
           f.Teken(this.gVenster);
           this.f.Add(fig);
           this.nPunt = 0;
       }
       private void TekenDriehoek()
       {
           Driehoek f = new Driehoek(this.cPunt[0], this.cPunt[1], this.cPunt[2], this.MijnPen);
           f.Teken(this.gVenster);
           this.f.Add(f);
           this.nPunt = 0;
       }
       private void TekenEllips()
       {
           Ellips f = new Ellips(this.cPunt[0], this.cPunt[1], this.MijnPen);
           f.Teken(this.gVenster);
           this.f.Add(f);
           this.nPunt = 0;
       }
       private void TekenLijn()
       {
           Lijn f = new Lijn(this.cPunt[0], this.cPunt[1], this.MijnPen);
           f.Teken(this.gVenster);
           this.f.Add(f);
           this.nPunt = 0;
       }
       private void TekenRechthoek()
       {
           Rechthoek f = new Rechthoek(this.cPunt[0], this.cPunt[1], this.MijnPen);
           f.Teken(this.gVenster);
           this.f.Add(f);
           this.nPunt = 0;
       }
       private void miMiddel_Click(object sender, EventArgs e)
       {
           this.CheckmiDikte(Dikte.Medium);
           this.MijnPen.Width = 5f;
           this.TekenAlles();
       }
       private void miVerversen_Click(object sender, EventArgs e)
       {
           this.TekenAlles();
       }
       private void miAlleswissen_Click(object sender, EventArgs e)
       {
           this.gVenster.Clear(Color.White);
           this.f.Wissen();
       }
       private void miZwart_Click(object sender, EventArgs e)
       {
           this.CheckmiKleur(Kleur.Zwart);
           this.MijnPen.Color = Color.Black;
           this.Brush.Color = Color.Black;
           this.TekenAlles();
       }
   }
}

Link naar reactie
Delen op andere sites

In de code van de form worden altijd parameters meegegeven bij de creatie van een figuur.

Volgens mij mag je public Figuur(); dus in commentaar zetten (of weglaten).

Als deze methode nog wordt gebruikt in een andere context waar je wel een willekeurige figuur kan aanmaken, maak dan daar een keuze voor een default figuur en creeer deze dan met de vereiste parameters.

Link naar reactie
Delen op andere sites

×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.