Hallo Leute,
Ich habe gerade ein Problem, wobei ich nicht so ganz weis, woher der Fehler kommt.
Folgende Situation:
Ich möchte gerne durch farbige hinterlegung eines Feldes dem Benutzer mitteilen ob seine Eingabe gültig ist. Jetzt möchte ich die Farbe nicht so aufdringlich machen und sie deshalb transparent machen, genau hier fängt das Problem an. Sobald ich die Farbe transparent setzte taucht ein ungewollter nebeneffekt auf oO
So sieht es ohne Transparents aus:
Jetzt meine Frage, was läuft hier schief?
[java=67]
/**
* Create the compelt GUI of the dialog
*/
@Override
protected void initGUI() {
setTitle(mc.getString("new_scheme"));
setMinimumSize(new Dimension(300, 100));
setMaximumSize(new Dimension(300, 100));
GridBagLayout gbl = new GridBagLayout();
setLayout(gbl);
gbl.rowWeights = new double[] {0.1, 0.1, 0.1};
gbl.rowHeights = new int[] {10, 20, 10};
gbl.columnWeights = new double[] {0.1, 0.1, 0.1, 0.1, 0.1, 1};
gbl.columnWidths = new int[] {10, 20, 20, 20, 20, 10};
// Schemaname - JLabel
JLabel schemeNameLabel = new JLabel(mc.getString("scheme_name") + ":");
add(schemeNameLabel, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
// Schemaname - Eingabefeld
add(schemeName, new GridBagConstraints(2, 0, 3, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 10, 0, 0), 0, 0));
schemeName.getDocument().addDocumentListener(new DocumentListener() {
@Override
public void removeUpdate(DocumentEvent arg0) {
uri.setText(mc.getSchemeController().generateUri("schemes", schemeName.getText()).toString());
validateName();
}
@Override
public void insertUpdate(DocumentEvent arg0) {
uri.setText(mc.getSchemeController().generateUri("schemes", schemeName.getText()).toString());
validateName();
}
@Override
public void changedUpdate(DocumentEvent arg0) {
uri.setText(mc.getSchemeController().generateUri("schemes", schemeName.getText()).toString());
validateName();
}
});
validate();
pack();
}
private void validateName(){
try{
SchemeValidator.validateSchemeName(schemeName.getText());
schemeName.setBackground(validatOk);
} catch (Exe e) {
schemeName.setBackground(validatFail);
}
}
}
[/code]
Ich hoffe ihr könnt mir helfen =/
mfg. Dagobert
Ich habe gerade ein Problem, wobei ich nicht so ganz weis, woher der Fehler kommt.
Folgende Situation:
Ich möchte gerne durch farbige hinterlegung eines Feldes dem Benutzer mitteilen ob seine Eingabe gültig ist. Jetzt möchte ich die Farbe nicht so aufdringlich machen und sie deshalb transparent machen, genau hier fängt das Problem an. Sobald ich die Farbe transparent setzte taucht ein ungewollter nebeneffekt auf oO
So sieht es ohne Transparents aus:
Jetzt meine Frage, was läuft hier schief?
[java=67]
/**
* Create the compelt GUI of the dialog
*/
@Override
protected void initGUI() {
setTitle(mc.getString("new_scheme"));
setMinimumSize(new Dimension(300, 100));
setMaximumSize(new Dimension(300, 100));
GridBagLayout gbl = new GridBagLayout();
setLayout(gbl);
gbl.rowWeights = new double[] {0.1, 0.1, 0.1};
gbl.rowHeights = new int[] {10, 20, 10};
gbl.columnWeights = new double[] {0.1, 0.1, 0.1, 0.1, 0.1, 1};
gbl.columnWidths = new int[] {10, 20, 20, 20, 20, 10};
// Schemaname - JLabel
JLabel schemeNameLabel = new JLabel(mc.getString("scheme_name") + ":");
add(schemeNameLabel, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
// Schemaname - Eingabefeld
add(schemeName, new GridBagConstraints(2, 0, 3, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 10, 0, 0), 0, 0));
schemeName.getDocument().addDocumentListener(new DocumentListener() {
@Override
public void removeUpdate(DocumentEvent arg0) {
uri.setText(mc.getSchemeController().generateUri("schemes", schemeName.getText()).toString());
validateName();
}
@Override
public void insertUpdate(DocumentEvent arg0) {
uri.setText(mc.getSchemeController().generateUri("schemes", schemeName.getText()).toString());
validateName();
}
@Override
public void changedUpdate(DocumentEvent arg0) {
uri.setText(mc.getSchemeController().generateUri("schemes", schemeName.getText()).toString());
validateName();
}
});
validate();
pack();
}
private void validateName(){
try{
SchemeValidator.validateSchemeName(schemeName.getText());
schemeName.setBackground(validatOk);
} catch (Exe e) {
schemeName.setBackground(validatFail);
}
}
}
[/code]
Ich hoffe ihr könnt mir helfen =/
mfg. Dagobert