U pravu si - nemam Image objekat, vec crtam sve u pbRadniProstor_Paint rucno:
Code:
private void pbRadniProstor_Paint(object sender, PaintEventArgs e)
{
Pen SivaLinija = new Pen(Brushes.LightGray);
Pen CrvenaLinija = new Pen(Brushes.Red);
Pen PlavaLinija = new Pen(Brushes.Blue);
Pen CrnaLinija = new Pen(Brushes.Black);
Pen LinijaZaCrtanje = new Pen(Brushes.Transparent);
Font ObičanFont = new Font("Arial", 12, FontStyle.Bold, GraphicsUnit.Point);
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.LineAlignment = StringAlignment.Center;
int Brojac;
CrvenaLinija.Width = 0.3f;
SivaLinija.Width = 0.3f;
PlavaLinija.Width = 4;
CrnaLinija.Width = 4;
if (Promenljive.MrežaUključena == true)
{
int VertikalnaRazdaljina = 10;
int HorizontalnaRazdaljina = 10;
if (edMrežaHoriz.Text != "" && edMrežaVert.Text != "")
{
VertikalnaRazdaljina = int.Parse(edMrežaVert.Text);
HorizontalnaRazdaljina = int.Parse(edMrežaHoriz.Text);
}
e.Graphics.FillRectangle(Brushes.White, pbRadniProstor.Left, pbRadniProstor.Top, pbRadniProstor.Width, pbRadniProstor.Height);
for (Brojac = 0; Brojac < pbRadniProstor.Height; Brojac += VertikalnaRazdaljina)
{
e.Graphics.DrawLine(SivaLinija, 0, Brojac, pbRadniProstor.Width, Brojac);
}
for (Brojac = 0; Brojac < pbRadniProstor.Width; Brojac += HorizontalnaRazdaljina)
{
e.Graphics.DrawLine(SivaLinija, Brojac, 0, Brojac, pbRadniProstor.Height);
}
}
if (Promenljive.BrojProcesOblika != 0)
{
for (Brojac = 0; Brojac < Promenljive.BrojProcesOblika; Brojac++)
{
RectangleF privremenipravougaonik = new RectangleF();
privremenipravougaonik.X = Promenljive.ProcesOblik[Brojac].PozicijaX;
privremenipravougaonik.Y = Promenljive.ProcesOblik[Brojac].PozicijaY;
privremenipravougaonik.Width = Promenljive.ProcesOblik[Brojac].Širina;
privremenipravougaonik.Height = Promenljive.ProcesOblik[Brojac].Dužina;
e.Graphics.DrawString(Promenljive.ProcesOblik[Brojac].Tekst, ObičanFont, Brushes.Black, privremenipravougaonik, format);
if (Promenljive.ProcesOblik[Brojac].Izabran == true) { e.Graphics.DrawRectangle(PlavaLinija, Rectangle.Round(privremenipravougaonik)); e.Graphics.DrawImage(ListaSlika2.Images[2], Promenljive.ProcesOblik[Brojac].PozicijaX + 10, Promenljive.ProcesOblik[Brojac].PozicijaY - 10); }
else { e.Graphics.DrawRectangle(CrnaLinija, Rectangle.Round(privremenipravougaonik)); }
}
}
}
SLIder.