Tekstfelt med tal?
Jeg skal til at lave en "lommeregner" der kan regne rødder og toppunkter ud, indtil videre har jeg fået lavet dette:import java.awt.*;
import java.awt.event.*;
class GrafiskVindue extends Frame
{
Label labelac = new Label();
Label labelbc = new Label();
Label labelcc = new Label();
Label labelec = new Label();
TextField textFieldNavnA = new TextField();
TextField textFieldNavnB = new TextField();
TextField textFieldNavnC = new TextField();
Button buttonOpdater = new Button();
TextArea textAreaHilsen = new TextArea();
// Udviklingsværktøj definerer gerne en separat metode hvor de
// initialiserer komponenterne. I JBuilder og JDeveloper hedder
// den jbInit(), mens den hedder initComponents() i Betbeans.
// Initialiseringen kunne dog lige så godt ligge direkte her i konstruktøren
public GrafiskVindue() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
// Udviklingsværktøjets initialisering af komponenter.
// Ændr med varsomhed, ellers kan værktøjet ikke genkende "sin" kode.
private void jbInit() throws Exception {
labelac.setText("A:");
labelac.setBounds(new Rectangle(5, 63, 15, 15));
textFieldNavnA.setText("5");
textFieldNavnA.setBounds(new Rectangle(25, 60, 60, 29));
labelbc.setText("B:");
labelbc.setBounds(new Rectangle(100, 63, 15, 15));
textFieldNavnB.setText("4");
textFieldNavnB.setBounds(new Rectangle(120, 60, 60, 29));
labelcc.setText("C:");
labelcc.setBounds(new Rectangle(195, 63, 15, 15));
textFieldNavnC.setText("3");
textFieldNavnC.setBounds(new Rectangle(215, 60, 60, 29));
buttonOpdater.setLabel("Regn ud!");
buttonOpdater.setBounds(new Rectangle(290, 60, 91, 29));
buttonOpdater.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {
buttonOpdater_actionPerformed(e);
}
});
String ac = textFieldNavnA.getText();
String bc = textFieldNavnB.getText();
String cc = textFieldNavnC.getText();
textAreaHilsen.setText("A værdien er sat til: "+ac+" ,B værdien er sat til: "+bc+" ,C værdien er sat til: "+cc);
textAreaHilsen.setBounds(new Rectangle(5, 130, 500, 78));
this.setLayout(null);
this.add(labelac, null);
this.add(labelbc, null);
this.add(labelcc, null);
this.add(textAreaHilsen, null);
this.add(buttonOpdater, null);
this.add(textFieldNavnA, null);
this.add(textFieldNavnB, null);
this.add(textFieldNavnC, null);
}
String ac = textFieldNavnA.getText();
String bc = textFieldNavnB.getText();
double dc=Math.sqrt(bc^2-4*ac*bc);
void buttonOpdater_actionPerformed(ActionEvent e) {
String ac = textFieldNavnA.getText();
String bc = textFieldNavnA.getText();
textAreaHilsen.setText("Rod 1 er: "+ac+" ,Rod 2 er:"+bc);
repaint(); // gentegn vinduet
}
}
public class andengradsligning1
{
public static void main(String[] arg)
{
GrafiskVindue vindue = new GrafiskVindue(); // opret vinduet
vindue.setSize(600,500); // sæt vinduets størrelse
vindue.setTitle("grafiskvindue"); // sæt vinduets titel
vindue.setVisible(true); // åbn vinduet
}
}
Når jeg skal regne diskriminanten ud, kommer den ud med at man ikke kan gange inde i en tekststreng, jeg ville så vide hvordan man kan lave teksten om til tal, så man godt kan gange ud osv.
Med venlig hilsen
David