myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   String array für JButton namen funktionieren nicht >:[ (https://mygully.com/showthread.php?t=2562770)

Philllll 02.02.12 21:56

String array für JButton namen funktionieren nicht >:[
 
final JButton [] bts = new JButton [16];
int u=0;
final String [] btsName = {"+","-","*","/","sin","cos","tan","kgv","ggt","e","log","ans","1 0hochx","xhochy","wurzel","xteWurzel"};
for (int i=0;i<bts.length;i++){
bts[i] = new JButton("i");

bts[i].setBackground(new Color(70, 70, 70,128));
bts[i].setForeground(new Color(255, 255,255));
bts[i].setBorderPainted(false);
// bts[i].setOpaque(true);
bts[i].setRolloverEnabled(false);
// bts[i].setFocusPainted(false);

// bts[i].addActionListener(new ButtonListener());
}

for (int a=0;a<5;a++){

bts[a].setBounds (a*40,65,35,35);

label.add(bts[a]);

}

for (int b=5;b<11;b++){
u=b-5;
bts[b].setBounds (u*40,120,35,35);
label.add(bts[b]);
}

for (int c=10;c<16;c++){
u=c-10;
bts[c].setBounds (u*40,175,35,35);
label.add(bts[c]);
}



es compeliert alles und ich kann die gui auch starten aber auf den buttons steht unlogischer weise immer ... :cry:
selbst wenn ich bts[i].setName("bla") in die for schleife schreibe bleibt es beim ... -.-
bitte um hilfe

TheL 02.02.12 23:03

Zitat:

Zitat von Philllll (Beitrag 23244689)
bts[i] = new JButton("i");

Also eigentlich sollte der Text deiner Buttons immer i lauten (als String, nicht der Wert von i in der Schleife).. "..." wundert mich selbst etwas, aber ich muss zugeben ich habe selbst noch nichtm it jbuttons gearbeitet.

versuchs mal mit :


bts[i] = new JButton(btsName[i]);

bzw statt: bts[i].setName("bla") mit .setText(..);

Philllll 02.02.12 23:20

alles schon probiert hatte am anfang auch alle i genannt ist aber ja einerlei weil die variable in der schleife erzeugt wird. hatte es nur geändert weil es bei einem freund so auf einmal funktioniere :/ mit set text etc habe ich alles schon gemacht es rührt sich nix :cry:

germgerm 03.02.12 07:14

Du erzeugst deine 16 Button-Objekte in der ersten Zeile, noch dazu final!
In der Schleife versuchst du dann 16 andere Objekte zuzuweisen, das geht so nicht.
Weg mit dem "new JButton" in der Schleife und verwende dafür bts[i].setText("TEST");

Philllll 03.02.12 16:49

hab ich auch alles schon gemacht aber ich habe den fehler gefunden:
dummer weise waren die buttons zu klein für die fonts :p
also problem gelöst dankeschön :D


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:22 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.