A dúvida que trago é tão idiota que duvido que já tenham pergutado :?
Este é o código:[code]
class PaintClass extends org.jdesktop.swingx.JXGraph{
public static void desenhaLinha(Matrix solucao) {
final double[] coef= new double[AjustePolinomial.MAX];
for(int i=0;i<solucao.getRowDimension();i++){
coef[i]=solucao.get(i,0);
}
AjustePolinomial.pGrafico.removeAllPlots();
JXGraph.Plot arg1 = new JXGraph.Plot() {
@Override
public double compute(double x) {
return coef[1]*x+coef[0];
}
};
AjustePolinomial.pGrafico.addPlots(Color.red, arg1);
AjustePolinomial.pGrafico.paintExtra(g); // linha do problema
}
[/code]
Este trecho não complia porque o método paintExtra, na linha que eu identifiquei, está declarado como protected em org.jdesktop.swingx.JXGraph. Como minha classe herda esta, não deveria aceitar?>
Já tentou acessá-lo usando o super?
Abraços,
Bom, com o super compilou. Falta ver se ele vai fazer o que eu quero! Hehehe…
Valeu pela idéia 
E a lista de argumentos… vc está passando os parametros corretos?
O erro é mesmo por causa do protected? Posta o erro…
[EDIT]Já respondido e solucionado acima[/EDITT]
init:
deps-jar:
Compiling 1 source file to C:\Documents and Settings\salvador\Meus documentos\NetBeansProjects\JavaApplication1\build\classes
C:\Documents and Settings\salvador\Meus documentos\NetBeansProjects\JavaApplication1\src\PacoteSalvador\AjustePolinomial.java:285: paintExtra(java.awt.Graphics2D) has protected access in org.jdesktop.swingx.JXGraph
AjustePolinomial.pGrafico.paintExtra(g);
1 error
CONSTRUÇÃO FALHOU (tempo total: 0 segundos)
O erro é esse mesmo. Verifiquei os prâmetros. O problema mesmo foi ver uma classe herdar outra e não compilar um método protected dela, isso sim eu achei estranho.
[quote=AkimSalvador]A dúvida que trago é tão idiota que duvido que já tenham pergutado :?
Este é o código:[code]
class PaintClass extends org.jdesktop.swingx.JXGraph{
public static void desenhaLinha(Matrix solucao) {
final double[] coef= new double[AjustePolinomial.MAX];
for(int i=0;i<solucao.getRowDimension();i++){
coef[i]=solucao.get(i,0);
}
AjustePolinomial.pGrafico.removeAllPlots();
JXGraph.Plot arg1 = new JXGraph.Plot() {
@Override
public double compute(double x) {
return coef[1]*x+coef[0];
}
};
AjustePolinomial.pGrafico.addPlots(Color.red, arg1);
AjustePolinomial.pGrafico.paintExtra(g); // linha do problema
}
[/code]
Este trecho não complia porque o método paintExtra, na linha que eu identifiquei, está declarado como protected em org.jdesktop.swingx.JXGraph. Como minha classe herda esta, não deveria aceitar?>[/quote]
Não.
Embora a sua classe extenda JXGraph vc não está executando o comando na sua classe.
Primeiro porque está usando dentro de um método static, portanto vc nem sequer pode usar herança, muito menos acessar coisas de outras classes.
Segundo, vc esta usando um objeto AjustePolinomial.pGrafico e não this.
Se AjustePolinomial.pGrafico é um PaintClass então publique o métodos assim
class PaintClass extends org.jdesktop.swingx.JXGraph{
public void paintExtra(Graphic g ){ // não sei se o parametro é esse
super.paintExtra(g);
}
Primeiro porque está usando dentro de um método static, portanto vc nem sequer pode usar herança, muito menos acessar coisas de outras classes.
Não tinha notado isso, Sergio. Talvez fosse esse meu primeiro obstáculo. Brigado pela dica!
No caso deste código, AjustePolinomial é uma outra classe, mas o que você apresentou deve resolver meu problema.
That´s all, folks!