View Single Post
  #7 (permalink)  
Old 09-07-2008, 09:01 PM
Grom Grom is offline
Member
 
Join Date: Aug 2008
Posts: 20
Grom is on a distinguished road
Hello!

380 K is huge?
I am creating a calculator, and I need TextFields to input numbers to calculate.
If, by mistake or deliberately, user should type a letter or anything but numbers, the textField should 'clear' itself. Not set invisible, just clear the textField.

here is the picture:

http: //shrani.si/f/a/mT/4hydyIgw/screenshot-truscalcpath-.png


ok, here is the main code:

Code:
// Here I call my Truss Class, so I can use it // through the whole program Truss2Class Truss = new Truss2Class(); private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { try { VnosV_class(); // double a = Double(String WeightTextField.getText()); // I display Truss Class content TrussClassNameLabel.setText(Truss.T_name()); TrussClassWeightLabel.setText(String.valueOf(Truss.T_weight())); TrussClassLengthLabel.setText(String.valueOf(Truss.T_length())); TrussClassSpanLabel.setText(String.valueOf(Truss.T_span())); TrussClassLeftEndLabel.setText(String.valueOf(Truss.T_leftEnd())); TrussClassRightEndLabel.setText(String.valueOf(Truss.T_rightEnd())); jTextArea1.append(String.valueOf(Truss.T_weight())); // now, this is NOT adding text into next line... jTextArea1.append(String.valueOf(Truss.T_length())); // I need to be added in next line. jTextArea1.append(String.valueOf(Truss.T_span())); jTextArea1.append(String.valueOf(Truss.T_leftEnd())); jTextArea1.append(String.valueOf(Truss.T_rightEnd())); } catch (Exception e) { } } private void VnosV_class () { // Here I try to check if input is correct (one string, rest should be double) try { Truss.setT_name(NameTextField.getText()); Truss.setT_weight(Vejica.StringToDouble(WeightTextField.getText())); // I call Vejica Class Truss.setT_length(Vejica.StringToDouble(LengthTextField.getText())); // to set it in right decimal character Truss.setT_span(Vejica.StringToDouble(SpanTextField.getText())); Truss.setT_leftEnd(Vejica.StringToDouble(LeftEndTextField.getText())); Truss.setT_rightEnd( Vejica.StringToDouble(LengthTextField.getText()) - Vejica.StringToDouble(SpanTextField.getText()) - Vejica.StringToDouble(LeftEndTextField.getText()) ); } catch (Exception e) { // in case something goes wrong: Truss.setT_name(""); Truss.setT_weight(0); Truss.setT_length(0); Truss.setT_span(0); Truss.setT_leftEnd(0); Truss.setT_rightEnd(0); } } private void WeightTextFieldCaretUpdate(javax.swing.event.CaretEvent evt) { try { String number = WeightTextField.getText(); Vejica.StringToDouble(number); WeightLabel.setText(String.valueOf(number) + " Weight"); //WeightTextField.setInputVerifier(arg0); } catch (Exception e) { WeightTextField.setText(""); } } private void LengthTextFieldCaretUpdate(javax.swing.event.CaretEvent evt) { try { String number = LengthTextField.getText(); Vejica.StringToDouble(number); LengthLabel.setText(String.valueOf(number) + " Length"); } catch (Exception e) { LengthTextField.setText(""); } } private void SpanTextFieldCaretUpdate(javax.swing.event.CaretEvent evt) { try { String number = SpanTextField.getText(); Vejica.StringToDouble(number); double num = Double.parseDouble(number); String biger = LengthTextField.getText(); Vejica.StringToDouble(biger); double big = Double.parseDouble(biger); if ( num > big ) { SpanTextField.setText(""); SpanLabel.setText("Span"); } else { SpanLabel.setText( (big - num) + " Span" ); } } catch (Exception e) { SpanTextField.setText(""); } } private void LeftEndTextFieldCaretUpdate(javax.swing.event.CaretEvent evt) { try { String number = LeftEndTextField.getText(); Vejica.StringToDouble(number); LeftEndLabel.setText(String.valueOf(number) + " Left End"); } catch (Exception e) { LeftEndTextField.setText(""); } }


Here is Vejica Class, that I use to check for input (string to double)

Code:
public class Vejica { public static double StringToDouble(String stringNum) { String decimalCharacter = "."; // string decimalCharacter = System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator; /** *This class I made in order to 'transform/translste' * string to double. I replace whatever (well just comma and fullstop) * decimal separator with fullstop(.) . * I have in C# this code: * string decimalCharacter = System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator; */ stringNum = stringNum.replace(".", decimalCharacter); stringNum = stringNum.replace(",", decimalCharacter); return Double.parseDouble(stringNum); } }


And here is my Truss Class, where I store the input

Code:
public class Truss2Class { /** *Here are stored * calculation data *(operants) */ private String NameTruss; private double WeightTruss; private double LengthTruss; private double SpanTruss; private double LeftEndTruss; private double RightEndTruss; //here I can get my calculation operants public String T_name() { return NameTruss; } public double T_weight() { return WeightTruss; } public double T_length() { return LengthTruss; } public double T_span() { return SpanTruss; } public double T_leftEnd() { return LeftEndTruss; } public double T_rightEnd() { return RightEndTruss; } //here I can set new value //of my operants public void setT_name(String name) { NameTruss = name; } public void setT_weight(double weight) { WeightTruss = weight; } public void setT_length(double length) { LengthTruss = length; } public void setT_span(double span) { SpanTruss = span; } public void setT_leftEnd(double leftEnd) { LeftEndTruss = leftEnd; } public void setT_rightEnd( double rightEnd) { RightEndTruss = rightEnd; } }

Hope you could help me now...

Kind regards, Grom
Reply With Quote