2016-04-07 43 views
0

İşte yazdığım yöntemde, g nesnesinin boş ve kesmesi yöntemini çağırdığımda hata veriyor. Lütfen düzeltmeme yardım et, teşekkürler. Okulumun üssü, Applet'i kullanmalıyım.Kullanıcı girdisinde bir satır kullanımı uygulama temeli nasıl çizilir? g gull durumu oluştu hatası, nasıl düzeltileceği

public void drawing(Graphics g,int a,int b,int c){ //method 
    double d,e,f,x,y,m; 
    d = (double) a; 
    e = (double) b; 
    f = (double) c; 
    if (e>f){ 
     m=e; 
     e=f; 
     f=m; 
    } 

ben ... nesne g başlatmak için deneyin ama ben gerçekten bunu yapamam .. Ben nesne g başlatmak için deneyin

ex=(e*e-f*f+d*d)/2/d; 
    //calculate the point required 
    ey=(Math.pow((d+e+f)*(d+e-f)*(d-e+f)*(e+f-d),0.5))/2/d; 
    //drawing the line 
    g.drawLine(0,0,(int) ex,(int) ey); //this is the main problem 
} 

... ama Eğer yöntem (çizim ararsanız gerçekten) .. boyadan() yöntemi

+0

1) Lütfen öğretmene [CS öğretmenlerinin ** Java uygulamalarını öğretme ** niçin durması gerektiğini] tavsiye edin (http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should-stop-teaching -Java-applet /). 2) AWT'yi neden kullanmalı? Bileşenleri Swing lehine kullanarak AWT'yi terk etmek için birçok iyi sebepten dolayı [bu yanıt] 'a bakın (http://stackoverflow.com/questions/6255106/java-gui-listeners-without-awt/6255978#6255978). 3) ** Daha iyi yardım için, daha önce bir [MCVE] veya [Kısa, Kendini İçeren, Doğru Örnek] (http://www.sscce.org/) gönderin. ** –

+0

* "' 'n' = null * *' @ 'Paint (Graphics g)' yöntemini geçersiz kılın ve 'g 'çizimini (g, ..)' metoduna geçirin. Bir boya yöntemini geçersiz kıldığınızda, hemen "super.paint (g);" yöntemini çağırın. AWT ve Swing konteynerlerinin, temel JRE tarafından söylendiğinde boyandığını anlamak önemlidir. –

cevap

0

bunu yapamaz ve boya yöntemi bu şekilde tanımlanır

public void paint(Graphics g){ 
    ... 
} 
işlev çağrısı açıklamada, Grafik çizim () boya() yöntemin bir argümandır yönteme g nesne geçmektedir. boya Grafik nesne g sıfır olmadığı

public void paint(Graphics g){ 
    .... 
    drawing(g, int, int, int); 
} 

, aynı nesne sorunu çözmek gerekir() metodu çizim geçirilir.