Hallo mal wieder.
Um mein vorheriges wissen mit arrays und JLabel sowie LPanels zu verbinden,
wollte ich ein Bildschirm voll mit Jpannels machen, die wiederrum alle in den "mainpannel" hinzugefügt wurden.
dazu hab ich 2 for Schleifen erzeugt, udn jeweils ein array panel mit
schleifenbedingten x,y, und color werten, damit die nebeneinander und doch klar erkennbar sind.
Das ergebniss ist das totale Chaos
Das Program zeigt mir nur ein teil der Pannels, und zwar in abhängigkeit davon, wieviele Schleifen ich mache
so sieht es zb aus wenn ich die Maus nicht bewege
https://www.dropbox.com/s/6zb81iy828uisbi/Screenshot 2014-07-24 20.27.34.png
(ist wohl zu groß um als Grafik eingefügt zu sein.
man sieht, dass die tooltip beschreibung mitten im Felde sichtbar ist, sonst klickt einfach auf weitere screenshots.
sobald ich die maus anfange zu bewegen, wird überall wo die Maus grade ist, plötzlich auch der Panel dazu gezeichnet
https://www.dropbox.com/s/ub8640djyqsv8wk/Screenshot 2014-07-24 20.27.38.png
https://www.dropbox.com/s/rqraq1wex4beul0/Screenshot 2014-07-24 20.27.41.png
un dam ende sieht man letzendlich, es wurde das gemacht was ich wollte,
aber grafisch wurde es nicht gezeichnet
https://www.dropbox.com/s/fnefsrfgmugttbx/Screenshot 2014-07-24 20.27.47.png
liegt es an meinem PC ? läuft es bei euch ?
voller code
nun, dieses Program sollte für mich nur als Übung dienen, hat kein praktischen Zweck,
nichts desto trotz verstehe ich nicht, wieso zb nicht in jedem Jlabel die Text Ausgabe funktioniert
und wieso nicht alle Pannels angezeigt werden ?
habe ich zu viele in ein Hauptpanel reingesteckt ?
Um mein vorheriges wissen mit arrays und JLabel sowie LPanels zu verbinden,
wollte ich ein Bildschirm voll mit Jpannels machen, die wiederrum alle in den "mainpannel" hinzugefügt wurden.
dazu hab ich 2 for Schleifen erzeugt, udn jeweils ein array panel mit
schleifenbedingten x,y, und color werten, damit die nebeneinander und doch klar erkennbar sind.
Java:
jp[i][y].setBounds(i * 75, y * 75, 75, 75);
jp[i][y].setBackground(new Color(i * 10, y * 10, (i + y) * 3));
Das ergebniss ist das totale Chaos
Das Program zeigt mir nur ein teil der Pannels, und zwar in abhängigkeit davon, wieviele Schleifen ich mache
so sieht es zb aus wenn ich die Maus nicht bewege
https://www.dropbox.com/s/6zb81iy828uisbi/Screenshot 2014-07-24 20.27.34.png
(ist wohl zu groß um als Grafik eingefügt zu sein.
man sieht, dass die tooltip beschreibung mitten im Felde sichtbar ist, sonst klickt einfach auf weitere screenshots.
sobald ich die maus anfange zu bewegen, wird überall wo die Maus grade ist, plötzlich auch der Panel dazu gezeichnet
https://www.dropbox.com/s/ub8640djyqsv8wk/Screenshot 2014-07-24 20.27.38.png
https://www.dropbox.com/s/rqraq1wex4beul0/Screenshot 2014-07-24 20.27.41.png
un dam ende sieht man letzendlich, es wurde das gemacht was ich wollte,
aber grafisch wurde es nicht gezeichnet
https://www.dropbox.com/s/fnefsrfgmugttbx/Screenshot 2014-07-24 20.27.47.png
liegt es an meinem PC ? läuft es bei euch ?
voller code
Java:
import java.awt.Color;
import java.awt.Frame;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Lvl2b {
public static void main(String[] args) {
JFrame f = new JFrame();
JPanel mainp = new JPanel();
f.setExtendedState(Frame.MAXIMIZED_BOTH);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
// mainp.setBounds(0, 0, 1200, 800);
f.add(mainp);
JPanel[][] jp = new JPanel[21][21];
JLabel[][] jl = new JLabel[21][21];
for (int y = 1; y <= 11; y++) { // mit veränderten werten von y,i sowie panel Größen
for (int i = 1; i <= 20; i++) { // wird die Anzahl der Korekt dargestellten panels
jp[i][y] = new JPanel(); // neu bestimmt.
jl[i][y] = new JLabel();
jp[i][y].setBounds(i * 75, y * 75, 75, 75);
jp[i][y].setBackground(new Color(i * 10, y * 10, (i + y) * 3));
jp[i][y].setToolTipText("i=" + i + "y=" + y);
jl[i][y].setText("i=" + i + "y=" + y);
jl[i][y].setForeground(Color.YELLOW);//farbe gelb, d adie panels sehr dunkel sind.
jp[i][y].add(jl[i][y]);
jp[i][y].setVisible(true);
jl[i][y].setVisible(true);
mainp.add(jp[i][y]);
//System.out.println(i + " " + y);
}
}
}
}
nun, dieses Program sollte für mich nur als Übung dienen, hat kein praktischen Zweck,
nichts desto trotz verstehe ich nicht, wieso zb nicht in jedem Jlabel die Text Ausgabe funktioniert
und wieso nicht alle Pannels angezeigt werden ?
habe ich zu viele in ein Hauptpanel reingesteckt ?