DZIEKUJE !! dziala super :)
mialbym jeszcze pytanie bo udalo mi sie stworzyc za pomoca neta cos takiego tylko wyskakuje blad czy moglbys zerknac co jest nie tak :) wlasciwie wg mnie chodzi o to jak polaczyc ta nowa klase JTextFieldCharLimited z klasa swinga
import java.awt.*;
import javax.swing.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.text.*;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;
import javax.swing.text.AttributeSet;
public class swinga extends JFrame
{
public class JTextFieldCharLimit extends plainDocument {
private int limit;
public JTextFieldCharLimit(int limitation)
{
this.limit = limitation;
}
public void insertString(int offset, String str, AttrubuteSet set) throws BadlocationException
{
if(str == null)
{
return;
} else if((getLength()+ str.length())<= limit)
{
str = str.toUpperCase();
super.insertString(offset,str,set);
}
}
public swinga() {
super("Okienka");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(800,600);
JLabel NPWP = new JLabel("Nazwa produktu/wyrobu/procesu:");
JTextField nazwaproduktu = new JTextField(80);
nazwaproduktu.setDocument( new JTextFieldCharLimit(5));
JLabel OP = new JLabel ("Funkcja/opis");
JTextField opis = new JTextField(80);
JLabel PW = new JLabel("Potencjalna wada:");
JTextField potewada = new JTextField(80);
JLabel PSW = new JLabel("Potencjalny skutek wady:");
JTextField poteskutwady = new JTextField(80);
JLabel ZW = new JLabel("Znaczenie wady (Z):");
JTextField znaczwady = new JTextField(80);
JLabel PPW = new JLabel("Potencjalna przyczyna wady:");
JTextField poteprzyczwady = new JTextField(80);
JLabel RWW = new JLabel("Ryzyko wystapienia wady (R):");
JTextField ryzyko = new JTextField(80);
JLabel KP = new JLabel("Kontrola produktu:");
JTextField kontrola = new JTextField(80);
JLabel WW = new JLabel("Wykrywalnosc wady (W):");
JTextField wykrywwady = new JTextField(80);
JLabel LP = new JLabel("Liczba priorytetowa (LP)=Z*R*W:");
JTextField liczbaprior = new JTextField(80);
JLabel R = new JLabel("Rekomendacja:");
JTextField rekomend = new JTextField(80);
JLabel DR = new JLabel("Data realizacji [RRR-MM-DD]:");
JTextField data = new JTextField(80);
JLabel WY = new JLabel("Wykonawca:");
JTextField wyk = new JTextField(80);
znaczwady.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent event) {
char character = event.getKeyChar();
if (((character < '0') || (character > '9')) && (character != '\b')) {
event.consume();
}
try {
String txt = znaczwady.getText();
String s = (character == '\b') && (txt.length() > 0) ? txt.substring(0, txt.length()) : txt + character;
Byte b = Byte.parseByte(s);
} catch(NumberFormatException ex) {
event.consume();
}
}
});
ryzyko.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent event) {
char character = event.getKeyChar();
if (((character < '0') || (character > '9')) && (character != '\b')) {
event.consume();
}
try {
String txt = ryzyko.getText();
String s = (character == '\b') && (txt.length() > 0) ? txt.substring(0, txt.length()) : txt + character;
Byte b = Byte.parseByte(s);
} catch(NumberFormatException ex) {
event.consume();
}
}
});
wykrywwady.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent event) {
char character = event.getKeyChar();
if (((character < '0') || (character > '9')) && (character != '\b')) {
event.consume();
}
try {
String txt = wykrywwady.getText();
String s = (character == '\b') && (txt.length() > 0) ? txt.substring(0, txt.length()) : txt + character;
Byte b = Byte.parseByte(s);
} catch(NumberFormatException ex) {
event.consume();
}
}
});
/*
liczbaprior.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent event) {
char character = event.getKeyChar();
if (((character < '0') || (character > '9')) && (character != '\b')) {
event.consume();
}
try {
String txt = liczbaprior.getText();
String s = (character == '\b') && (txt.length() > 0) ? txt.substring(0, txt.length()) : txt + character;
Short sh = Short.parseShort(s);
Short wynikShort = znaczwady;
wynik.setText(wynikShort.toString());
} catch(NumberFormatException ex) {
event.consume();
}
}
});
*/
getContentPane().setLayout(new BoxLayout(getContentPane(), BoxLayout.Y_AXIS));
/*
getContentPane().setLayout(new GridLayout(14, 2));*/
getContentPane().add(NPWP);
getContentPane().add(nazwaproduktu);
getContentPane().add(OP);
getContentPane().add(opis);
getContentPane().add(PW);
getContentPane().add(potewada);
getContentPane().add(PSW);
getContentPane().add(poteskutwady);
getContentPane().add(ZW);
getContentPane().add(znaczwady);
getContentPane().add(PPW);
getContentPane().add(poteprzyczwady);
getContentPane().add(RWW);
getContentPane().add(ryzyko);
getContentPane().add(KP);
getContentPane().add(kontrola);
getContentPane().add(WW);
getContentPane().add(wykrywwady);
getContentPane().add(LP);
getContentPane().add(liczbaprior);
getContentPane().add(R);
getContentPane().add(rekomend);
getContentPane().add(DR);
getContentPane().add(data);
getContentPane().add(WY);
getContentPane().add(wyk);
setVisible(true);
}
public static void main(String[] args) {
new swinga();
new JTextFieldCharLimit(int limitation);
}
}
?