Я не мог найти ничего, что бы разрешило мою проблему. Я думаю, что самая большая проблема в том, что у меня слишком мало опыта. Я делаю более крупный проект в школе, и я не могу найти решение для запуска Jframe, а затем запустить апплет через это. Я также видел несколько подобных вопросов, но все, что я пробовал, не сработало. Я не знаю, если это необходимо, но вот код моего апплета.Java - Не удается запустить апплет через JFrame
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Projekt720p extends Applet implements ActionListener,ItemListener{
double y, zero, ablzero, ymax;
Choice colorgraph,colorabl;
Color selgraph, selabl;
String clrgraph, clrabl;
Label farbgraph = new Label("Graph Farbe: ");
Label farbabl = new Label(" Ableitung Farbe: ");
TextField eingabexmin=new TextField("Minmale X Koordinate",20);
TextField eingabexmax=new TextField("Maximale X Koordinate",20);
TextField eingabeymin=new TextField("Minmale Y Koordinate",20);
TextField eingabeymax=new TextField("Maximale Y Koordinate",20);
int dmax=0,dmin=0, wmax=0, wmin=0;
TextField wert1=new TextField("Wert 1",10);
TextField wert2=new TextField("Wert 2",10);
TextField wert3=new TextField("Wert 3",10);
TextField wert4=new TextField("Wert 4",10);
TextField wert5=new TextField("Wert 5",10);
TextField wert6=new TextField("Wert 6",10);
TextField wert7=new TextField("Wert 7",10);
TextField wert8=new TextField("Wert 8",10);
TextField wert9=new TextField("Wert 9",10);
TextField wert10=new TextField("Wert 10",10);
Button button1=new Button ("Zeichnen!");
Button button2=new Button ("Ableitung");
Button button3=new Button ("Tabelle");
int table=1;
int abl=1;
int button2show=1;
double def=0.0;
public double f1(double x) {
double y1=x*x; //gib die gewünschte Funktion ein
return(y1);
}
public double fabl(double x) {
double y2=(f1(x)-(f1(x-0.01)))/(0.01);
return(y2);
}
public void init(){
Dimension screensize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
resize(screensize);
add(eingabexmin);
add(eingabexmax);
add(eingabeymin);
add(eingabeymax);
add(wert1);
add(wert2);
add(wert3);
add(wert4);
add(wert5);
add(wert6);
add(wert7);
add(wert8);
add(wert9);
add(wert10);
button1.addActionListener(this);
add(button1);
button2.addActionListener(this);
add(button2);
button3.addActionListener(this);
add(button3);
colorgraph=new Choice();
colorgraph.add("Schwarz");
colorgraph.add("Grün");
colorgraph.add("Orange");
colorgraph.add("Blau");
colorgraph.add("Pink");
colorgraph.addItemListener(this);
selgraph=Color.black;
colorabl=new Choice();
colorabl.add("Schwarz");
colorabl.add("Grün");
colorabl.add("Orange");
colorabl.add("Blau");
colorabl.add("Pink");
colorabl.addItemListener(this);
selabl=Color.black;
add(farbgraph);
add(colorgraph);
add(farbabl);
add(colorabl);
}
public void itemStateChanged(ItemEvent combobox){
if (combobox.getSource() == colorgraph) {
clrgraph=colorgraph.getSelectedItem();
if(clrgraph.equals("Schwarz")){
selgraph=Color.black;
}
if(clrgraph.equals("Grün")){
selgraph=Color.green;
}
if(clrgraph.equals("Orange")){
selgraph=Color.orange;
}
if(clrgraph.equals("Blau")){
selgraph=Color.blue;
}
if(clrgraph.equals("Pink")){
selgraph=Color.magenta;
}
}
if (combobox.getSource() == colorabl) {
clrabl=colorabl.getSelectedItem();
if(clrabl.equals("Schwarz")){
selabl=Color.black;
}
if(clrabl.equals("Grün")){
selabl=Color.green;
}
if(clrabl.equals("Orange")){
selabl=Color.orange;
}
if(clrabl.equals("Blau")){
selabl=Color.blue;
}
if(clrabl.equals("Pink")){
selabl=Color.magenta;
}
}
}
public void paint(Graphics stift) {
//Buttons und Eingaben setzen
eingabexmin.setLocation(175, 5);
eingabexmax.setLocation(375, 5);
eingabeymax.setLocation(700, 175);
eingabeymin.setLocation(700, 475);
wert1.setLocation(1100, 300);
wert2.setLocation(1100, 340);
wert3.setLocation(1100, 360);
wert4.setLocation(1100, 380);
wert5.setLocation(1100, 400);
wert6.setLocation(1100, 420);
wert7.setLocation(1100, 440);
wert8.setLocation(1100, 460);
wert9.setLocation(1100, 480);
wert10.setLocation(1100, 500);
button1.setLocation(700, 350);
button2.setLocation(800, 350);
button3.setLocation(1120, 210);
stift.drawLine(40,40,40,660);
stift.drawLine(40,40,660,40);
stift.drawLine(660,40,660,660);
stift.drawLine(40,660,660,660);
stift.drawLine(39,39,39,661);
stift.drawLine(39,39,661,39);
stift.drawLine(661,39,661,661);
stift.drawLine(39,661,661,661);
if(dmin>dmax){
eingabexmin.setText("Minimalwert eingeben!");
eingabexmax.setText("Maximalwert eingeben!");
}else {
if(wmin>wmax){
eingabeymin.setText("Minimalwert eingeben!");
eingabeymax.setText("Maximalwert eingeben!");
}else {
if(button2show==1){
button2.setVisible(false);
}else button2.setVisible(true);
stift.setColor(Color.black);
//x und y Achse
if(dmin<0 && dmax>0){
stift.drawLine(50-600/(dmax-dmin)*dmin,50,50-600/(dmax-dmin)*dmin,650);
}else if(dmin<0 && dmax<=0){
stift.drawLine(650,50,650,650);
}else if(dmin>=0){
stift.drawLine(50,50,50,650);
}
if(wmin<0 && wmax>0){
stift.drawLine(50, 650+600/(wmax-wmin)*wmin,650, 650+600/(wmax-wmin)*wmin);
}else if(wmin<0 && wmax<=0){
stift.drawLine(50,50,650,50);
}else if(wmin>=0){
stift.drawLine(50,650,650,650);
}
//x und y Beschriftung
for (int x=dmin;x<=dmax;x=x+1){
if(wmin<0 && wmax>0){
stift.drawString(x+"", 50-600/(dmax-dmin)*dmin+x*600/(dmax-dmin), 662+600/(wmax-wmin)*wmin);
}else if(wmin<0 && wmax<=0){
if(x!=0){
stift.drawString(x+"", 50-600/(dmax-dmin)*dmin+x*600/(dmax-dmin), 50);
}
}else if(wmin>=0){
if(x!=0){
stift.drawString(x+"", 50-600/(dmax-dmin)*dmin+x*600/(dmax-dmin), 650);
}
}
}
for (int x=wmin;x<=wmax;x=x+1){
if(x!=0){
if(dmin<0 && dmax>0){
stift.drawString(x+"", 55-600/(dmax-dmin)*dmin, 650+600/(wmax-wmin)*wmin-x*600/(wmax-wmin));
}else if(dmin<0 && dmax<=0){
stift.drawString(x+"", 635, 650+600/(wmax-wmin)*wmin-x*600/(wmax-wmin));
}else if(dmin>=0){
stift.drawString(x+"", 55, 650+600/(wmax-wmin)*wmin-x*600/(wmax-wmin));
}
}
}
stift.setColor(selgraph);
for (int xpix=dmin*600/(dmax-dmin);xpix<=dmax*600/(dmax-dmin);xpix=xpix+1){
y = f1(xpix*def/600);
Integer ypix= (int)Math.round((y*600/(wmax-wmin))+0.5);
if(650+600/(wmax-wmin)*wmin-ypix>50 && 650+600/(wmax-wmin)*wmin-ypix<650){
stift.drawOval(xpix+50-600/(dmax-dmin)*dmin, 650+600/(wmax-wmin)*wmin-ypix, 2,2);
}
}
if (abl==3){
stift.setColor(selabl);
for (int xpix=dmin*600/(dmax-dmin);xpix<=dmax*600/(dmax-dmin);xpix=xpix+1){
y = fabl(xpix*def/600);
Integer ypix= (int)Math.round((y*600/(wmax-wmin))+0.5);
if(650+600/(wmax-wmin)*wmin-ypix>50 && 650+600/(wmax-wmin)*wmin-ypix<650){
stift.drawOval(xpix+50-600/(dmax-dmin)*dmin, 650+600/(wmax-wmin)*wmin-ypix, 2,2);
}
}
}
if (table==3){
double w1=Double.valueOf(wert1.getText());
double w2=Double.valueOf(wert2.getText());
double w3=Double.valueOf(wert3.getText());
double w4=Double.valueOf(wert4.getText());
double w5=Double.valueOf(wert5.getText());
double w6=Double.valueOf(wert6.getText());
double w7=Double.valueOf(wert7.getText());
double w8=Double.valueOf(wert8.getText());
double w9=Double.valueOf(wert9.getText());
double w10=Double.valueOf(wert10.getText());
stift.drawLine(1100,285,1170,285);
stift.drawLine(1135,280,1135,480);
stift.drawString("x", 1100, 280);
stift.drawString("f(x)", 1150, 280);
stift.drawString(w1+"", 1100, 300);
stift.drawString((double)Math.round(f1(w1)*100)/100+"", 1150, 300);
stift.drawString(w2+"", 1100, 320);
stift.drawString((double)Math.round(f1(w2)*100)/100+"", 1150, 320);
stift.drawString(w3+"", 1100, 340);
stift.drawString((double)Math.round(f1(w3)*100)/100+"", 1150, 340);
stift.drawString(w4+"", 1100, 360);
stift.drawString((double)Math.round(f1(w4)*100)/100+"", 1150, 360);
stift.drawString(w5+"", 1100, 380);
stift.drawString((double)Math.round(f1(w5)*100)/100+"", 1150, 380);
stift.drawString(w6+"", 1100, 400);
stift.drawString((double)Math.round(f1(w6)*100)/100+"", 1150, 400);
stift.drawString(w7+"", 1100, 420);
stift.drawString((double)Math.round(f1(w7)*100)/100+"", 1150, 420);
stift.drawString(w8+"", 1100, 440);
stift.drawString((double)Math.round(f1(w8)*100)/100+"", 1150, 440);
stift.drawString(w9+"", 1100, 460);
stift.drawString((double)Math.round(f1(w9)*100)/100+"", 1150, 460);
stift.drawString(w10+"", 1100, 480);
stift.drawString((double)Math.round(f1(w10)*100)/100+"", 1150, 480);
}
}
}
}
public void actionPerformed(ActionEvent event) {
if (event.getSource() == button1) {
dmin=Integer.valueOf(eingabexmin.getText());
dmax=Integer.valueOf(eingabexmax.getText());
wmin=Integer.valueOf(eingabeymin.getText());
wmax=Integer.valueOf(eingabeymax.getText());
def=dmax-dmin;
repaint();
button2show=3;
}
if (event.getSource() == button2) {
abl=3;
repaint();
}
if (event.getSource() == button3) {
wert1.setVisible(false);
wert2.setVisible(false);
wert3.setVisible(false);
wert4.setVisible(false);
wert5.setVisible(false);
wert6.setVisible(false);
wert7.setVisible(false);
wert8.setVisible(false);
wert9.setVisible(false);
wert10.setVisible(false);
table=3;
repaint();
}
}
}