Boa tarde. Galera estou tentando desenvolver alguns componentes visuais java pra facilitar o desenvolvimento em desktop. Estou com um problema que é o seguinte: Tenho um campo boolean na minha aplicação que tem os gets e sets normalmente e quando importo meu componente no netbeans ele aparece nas propriedades mais quando mudo a propriedade a aplicação não esta lendo o valor que alterei. seguem as classes.
[code]package Br.Com.Util.CustomComponents;
import java.awt.event.FocusEvent;
import java.awt.event.KeyEvent;
/**
*
-
@author Josimar
*/
public class JCustomTextField extends JBaseComponent {private boolean upperCase = true;
public JCustomTextField() {
setDocument(new UpperCaseDocument(isUpperCase()));
keyListener();
focusListener();
}public boolean isUpperCase() {
return upperCase;
}public void setUpperCase(boolean upperCase) {
this.upperCase = upperCase;
}private void focusListener() {
this.addFocusListener(new java.awt.event.FocusAdapter() {@Override public void focusGained(FocusEvent e) { super.focusGained(e); selectAll(); } @Override public void focusLost(java.awt.event.FocusEvent evt) { super.focusLost(evt); } });
}
private void keyListener() {
this.addKeyListener(new java.awt.event.KeyAdapter() {@Override public void keyPressed(KeyEvent e) { if (e.getKeyCode() == e.VK_ENTER) { transferFocus(); } super.keyPressed(e); } @Override public void keyTyped(java.awt.event.KeyEvent evt) { if (getMaxCharacters() > 0) { if (getMaxCharacters() <= getText().length()) { evt.consume(); } } super.keyTyped(evt); } });
}
}[/code]
[code]
package Br.Com.Util.CustomComponents;
import javax.swing.JTextField;
/**
*
-
@author Josimar
*/
public abstract class JBaseComponent extends JTextField {private Integer maxCharacters = 0;
private Boolean fieldNull = true;public JBaseComponent() {
}@Override
public String getText() {
return super.getText();
}@Override
public void setText(String text) {
super.setText(text);
}public Boolean getFieldNull() {
return fieldNull;
}public void setFieldNull(Boolean fieldNull) {
this.fieldNull = fieldNull;
}public Integer getMaxCharacters() {
return maxCharacters;
}public void setMaxCharacters(Integer maxCharacters) {
this.maxCharacters = maxCharacters;
}
}[/code]
[code]
package Br.Com.Util.CustomComponents;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;
/**
*
-
@author Josimar
*/
public class UpperCaseDocument extends PlainDocument {
private boolean upperCase;
public UpperCaseDocument(boolean upperCase) {
this.upperCase = upperCase;
}@Override
public void insertString(int offs, String str, javax.swing.text.AttributeSet a) throws BadLocationException {
if (upperCase) {
super.insertString(offs, str.toUpperCase(), a);
} else {
super.insertString(offs, str.toLowerCase(), a);
}
}
}[/code]