picturebox paint eventi olmadan yani ben bir fonksiyonun icinden cagircam onu

 public void Ciz()
{
        Graphics g=pictureBox1.CreateGraphics();
        Pen kalem = new Pen(Color.Red, 5);   
        g.DrawLine(kalem , 10,10,30,30);
}

Bu sekilde cizdirmek istiyorum fakat olmuyor pictureboxda gozukmuyor nasıl yapabilirim.

soruldu: 28 Tem, 13:09

engineers's gravatar image

engineers
356517091
cevap kabul oranı: 23%

değiştirildi: 28 Tem, 13:09


Ciz metodunda bir sorun gözükmüyor. Bu Ciz metodunun buttona basıldığında çalışıp çalışmadığını kontrol eder misin?

Eğer form load yada constructor ta bu metodu çağırıyor isen kontrolü göncellenmemesi ile çizilmiyor olabilir. Bu durumu aşabilmek için formun print eventini override ederek deneme yapabilirsin.

Kodunu aşağıdaki gibi değiştirdiğinde çalışacaktır.

public void Ciz()
{
     Graphics g = pictureBox1.CreateGraphics();
     Pen kalem = new Pen(Color.Red, 5);
     g.DrawLine(kalem, 10, 10, 30, 30);
     pictureBox1.Update(); //bu satırı ekledim
}

protected override void OnPrint(PaintEventArgs e)
{
    base.OnPrint(e);
    Ciz();
}

İyi çalışmalar

permanent link

cevaplandı: 29 Tem, 03:37

M%C3%BCsl%C3%BCm%20%C3%96ZT%C3%9CRK's gravatar image

Müslüm ÖZTÜRK
10.7k103691
cevap kabul oranı: 28%

değiştirildi: 29 Tem, 03:56

Form load dan kaynaklanıyormus cok saol button ile tetikleyince calıstı :)

(29 Tem, 04:04) engineers engineers's gravatar image
Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×238

Soruldu: 28 Tem, 13:09

Görüntüleme: 110 kez

Son güncelleme: 29 Tem, 04:04

powered by BitNami OSQA