Java - Ayuda porfavor, me estoy volviendo loco con esto

 
Vista:

Ayuda porfavor, me estoy volviendo loco con esto

Publicado por Cris (4 intervenciones) el 18/10/2006 17:05:30
Mi problema basicamente es ke no consigo insertar Labels ni textfield ni nigun otro tipo en mi frame, ya que necesito ke la captura de datos sea por medio de estos y no por JOptionPane, si me pueden ayudar se los agradeceria...... este es la parte del codigo donde supuestamente deberian ir los label y textfield

class MiPanel extends JPanel
{
public void paint(Graphics g)
{
//super.paintComponent(g);


//Fuentes
Font f5= new Font("TimesRoman",Font.BOLD,8);
Font f= new Font("TimesRoman",Font.BOLD,13);
Font ff= new Font("TimesRoman",Font.BOLD|Font.ITALIC,13);
Font f1= new Font("TimesRoman",Font.BOLD,10);
Font f2= new Font("TimesRoman",Font.BOLD|Font.ITALIC,16);
Font fc= new Font("TimesRoman",Font.BOLD,9);

//Valores para tamaño de la grafica
int apAncho1,apAlto1,apAncho,apAlto;/*,count;*/
int x0,xN,y0,x4,xa,y4,ya,yN;
double xmin2,xmax2,ymin2,ymax2,xmin,xmax,ymin,ymax;

//Valores para graficar
int Y,Y1,Y2,j1,j2,z,jl,p=0,w=13,m=19,Yx,Yy,Yz,J1,J2,L,JL,q=0,s=13,n=19;
int [] h={75,150,25,50,10,70};
int [] u={5,15,25,50,10,70,35};
int prom11=0,rango11=0,prom21=0,rango21=0;
int prom12=0,rango12=0,prom22=0,rango22=0;


//Tamaños de las Graficas
//PG
apAncho = 580;//d.width anchura;
apAlto = 400;//d.height altura;
x0 = y0 = 0;
xN = apAncho-1;
yN = apAlto-1;
xmin = -10.0;
xmax = 10.0;
ymin = -1.0;
ymax = 1.0;


//SG
apAncho1 = 580;//d.width anchura;
apAlto1 = 150;//d.height altura;
x4 = y4 = 0;
xa = (apAncho1)-1;
ya = (apAlto1)-1;
xmin2 = -10.0;
xmax2 = 10.0;
ymin2 = -1.0;
ymax2 = 1.0;


g.setColor(Color.black);
// g.setFont(ff);
g.drawString("s",38,110);
g.drawString("w",770,348);

g.setColor(Color.red);
g.drawString("w",38,90);




//intentoooooooooooooooo
g.setColor(Color.blue);
g.fillRoundRect(620,310,360,360,30,40);
g.fillRoundRect(20,70,960,265,30,40);

g.setColor(Color.white);
g.fillRect(110,77,98,18);
g.drawLine(98,107,960,107);
g.drawLine(38,318,960,318);
g.drawLine(38,113,38,318);
g.drawLine(960,107,960,318);

g.drawLine(637,344,762,344);
g.drawLine(824,344,962,344);


// CUADRICULA Inicializacion de coordenadas
z = 10;
L = 10;
g.setFont(f);
g.setColor(Color.lightGray);
j2 = apAncho;
J2 = apAncho1;

if(apAncho < apAlto)
{
J2 = apAlto1; //cambia la grafica por ejes
j2 = apAlto;
}


for( int i=0; L<J2; i++)
{
L = i * 10;//tamano entre cuadros cuadricula
g.drawLine(20,L+350,apAncho1+20,L+350);//rayas horizontales
g.drawLine(L+20,350,L+20,apAlto1+300);//rayas verticales

}//SG

for( int i=0; z<j2; i++)
{
z = i * 10;//tamano entre cuadros cuadricula
g.drawLine(20,z+470,apAncho+20,z+470);//rayas horizontales
g.drawLine(z+20,470,z+20,apAlto+270);//rayas verticales

}
//PG
g.setColor(Color.blue); //EJES X y Y ,PG
g.drawLine(20,670,apAncho+20,670); //horizontal
g.drawLine(20,470,20,apAlto+310); //vertical(20,3,20,apAlto)

//SG
g.drawLine(20,450,apAncho1+20,450); //horizontal
g.drawLine(20,350,20,apAlto1+300); //vertical (20,3,20,apAlto)

g.setColor(Color.black);
g.fillRect(20,453,583,14);

//Numero de Muestras

g.setColor(Color.white);
g.setFont(ff);
g.drawString("Muestras",38,110);
g.drawString("Metricas",770,348);

g.setColor(Color.yellow
);
g.drawString("Work Order:",38,90);

g.setFont(fc);
g.setColor(Color.yellow);
g.drawString("1",29,463);
g.drawString("2",39,463);
g.drawString("3",49,463);
g.drawString("4",59,463);
g.drawString("5",69,463);
g.drawString("6",79,463);
g.drawString("7",89,463);
g.drawString("8",99,463);
g.drawString("9",109,463);
g.drawString("10",119,463);
g.drawString("20",216,463);
g.drawString("25",266,463);
g.drawString("30",316,463);

g.setColor(Color.white);
g.drawString("NUMERO DE MUESTRAS",476,463);

// Inicializacion de Valores
Y =670; //200
z = 20; //20
Y1 = 670; //200

Yx =450; //200
L = 20; //20
Yy = 450;


g.setFont(f2);
g.setColor(Color.black);
String texto2 ="";
g.drawString(texto2,720,96);

//Graficando los datos en la cuadricula
//do
//{
//Primera Grafica
g.setFont(f);
g.setColor(Color.black);
String texto ="Dato[ "+(p+1)+" ] = "+h[p];
String texto5= ""+h[p];
Y2 = Y - h[p+1];

g.drawString(texto,42, w*10); //Datos en tabla roja

g.setFont(f1);
g.setColor(Color.black); //numeros en la grafica
g.drawString(texto5,z,Y1);

g.setColor(Color.red); //lineas entre puntos en la grafica
g.drawLine(z,Y1,z+10,Y2);

Y1 = Y - h[p+1];
z = z + 10;//ajuste entre puntos de cuadricula

prom11=(prom11+h[p]);

//PROMEDIO Y RANGO
if(p==4)
{
prom12=(prom11)/5;
g.setFont(f);
g.setColor(Color.black);
String promedio1="Promedio: "+prom12;
g.drawString(promedio1,42,180);
String rango_1="Rango: "+prom12;
g.drawString(rango_1,42,190);
}

w++;
p++;
//}while(p<42);

//Segunda Grafica
g.setFont(f);
g.setColor(Color.black);//
String Texto ="Dato[ "+q+" ] = "+u[q];
String Texto5= ""+u[q];
Yz = Yx - u[q+1];

g.drawString(Texto,160, s*10);//5 //Datos en tabla roja

g.setFont(f1);
g.setColor(Color.black); //numeros en la grafica
g.drawString(Texto5,L,Yy);

g.setColor(Color.magenta); //lineas entre puntos en la grafica
g.drawLine(L,Yy,L+10,Yz);
Yy = Yx - u[q+1];
L = L + 10;//ajuste entre puntos de cuadricula


//PROMEDIO Y RANGO
prom21=(prom21+u[q]);
if(q==4)
{
prom22=(prom21)/5;
g.setFont(f);
g.setColor(Color.black);
String promedio2="Promedio: "+prom22;
g.drawString(promedio2,160,180);
String rango_2="Rango: "+prom22;
g.drawString(rango_2,160,190);
}

s++;
q++;



// }while(p<42);//fin del do while*/





}
}


public class JPanelTest
{
public static void main(String[] args)
{

JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JPanelFrame();
frame.setVisible(true);

}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda porfavor, me estoy volviendo loco con est

Publicado por Kike (72 intervenciones) el 18/10/2006 19:03:28
Hola. Mira, lo que debes hacer es establecer una propiedad de tu marco (frame) de la siguiente manera:

frame.setLayout( null );

Y agregar el panel (MiPanel) de la siguiente manera:

public class Prueba
{
public static void main(String[] args)
{
MiPanel miPanel = new MiPanel();
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame();
frame.setLayout( null );
frame.add( miPanel );
miPanel.setBounds( 0, 0, 900, 700 );

JTextField campo = new JTextField();
frame.add( campo );
campo.setBounds( 10, 10, 100, 28 );

frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setSize( 900, 700 );
frame.setVisible( true );
frame.setVisible(true);

}
}

Este fragmento de código te agregará tu panel y un cuadro de texto en la posición x = 10, y = 10 y tiene una dimensión de 100x28.

Espero te sirva. Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda porfavor, me estoy volviendo loco con est

Publicado por cris (4 intervenciones) el 18/10/2006 19:20:13
no kike, no funciono, el problema es ke el ActionListener no esta fucnionando o no esta donde deberia, este es el error

addActionListener(java.awt.event.ActionListener) in java.awt.TextField cannot be applied to ()

name.addActionListener();

mira te voa mandar mi codigo echale ojo, y si me puedes decir donde esta el error te lo agradeceria
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Ayuda porfavor, me estoy volviendo loco con est

Publicado por chuidiang (950 intervenciones) el 18/10/2006 23:44:00
Hola:

No veo el código de addActionListener, pero me da la impresión de que no le estás pasando el parámetro que necesita. El método addActionListener() lleva un parámetro (un ActionListener) y por el error tiene pinta de que lo estás llamando sin parámetros. Debería ser algo asi

tuTextField.addActionListener (new ActionListener()
{
public void actionPerformed (ActionEvent e)
{
// Aqui el codigo que quieres que se realice al pulsar <intro> en el text field.
}
}

Echa de todas formas un ojo a http://www.chuidiang.com/chuwiki/index.php?title=ActionListener para ver otras formas de crear el ActionListener.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar