Also, ich bin soweit das ich Textfelder habe, einen KeyTimer und die Buchstaben zuzufuegen, und auch ein String Array
um die keys abzufragen.
Nun ist mein Problem das ich zb der Klasse Textfeld einen Typ mitgebe entweder Nummern oder Text
Fuer den Text kann ich das obere Array benutzen wenn ich jetzt nur nummern will koennte ich dieses benutzen
Nur wie benutz ich das, ueberall im Code wird immer keys benutzt.
So zb in der KeyConfirmed Methode:
Wie loes ich das Problem nun am schoensten?
Weil hab mal geschaut
entweder so
oder
und so gehts net
Das problem ist ja, das mein array mti den keys ueberall bekannt sein muss
Code:
private static final String[] keys = { " 0+", " -.,1", "abc2", "def3",
"ghi4", "jkl5", "mno6", "pqrs7", "tuv8", "wxyz9", " #" };
Nun ist mein Problem das ich zb der Klasse Textfeld einen Typ mitgebe entweder Nummern oder Text
Fuer den Text kann ich das obere Array benutzen wenn ich jetzt nur nummern will koennte ich dieses benutzen
Code:
private static final String[] numbers = { "+0", "1", "2", "3",
"4", "5", "6", "7", "8", "9" };
Nur wie benutz ich das, ueberall im Code wird immer keys benutzt.
So zb in der KeyConfirmed Methode:
Code:
/**
* handle the addKey method, and the choosen key
*/
public synchronized void keyConfirmed () {
if (keyMajor != - 1) {
String all = keys[keyMajor];
IViewItem cur = (IViewItem) fields.elementAt(currentField);
numberLinesAvailable = ((InputField) cur).getNumberLines();
// is the width of the line smaller than the width of the field
String textCurrentField = ((InputField) cur).getText(numberLines - 1);
int textWidth = notSelected.stringWidth(textCurrentField);
int inputFieldWidth = ((InputField) cur).getWidthField() - 15;
boolean widthLine = textWidth < inputFieldWidth;
// only add the choosen char if number lines is not bigger than
// available lines
if (numberLines < numberLinesAvailable
|| (numberLines == numberLinesAvailable && widthLine)) {
((InputField) fields.elementAt(currentField)).addChar(all.charAt(keyMinor), currentChar);
moveCursor(FORWARD);
}
keyMajor = - 1;
repaint();
}
}
Wie loes ich das Problem nun am schoensten?
Weil hab mal geschaut
entweder so
Code:
int x[] = { 1, 2, 3 }; // OK
Code:
int z[] = new int[3];
z[1] = 1; z[2] = 2; z[3] = 3; // OK
und so gehts net
Code:
int y[] = new int[3];
y = { 1, 2, 3 }
Das problem ist ja, das mein array mti den keys ueberall bekannt sein muss