Dynamische Zahl und Positionierung von Objekten

Status
Nicht offen für weitere Antworten.

qger

Mitglied
Hi!
Ich habe folgendes Problem:

Ich habe eine erst zur Laufzeit bekannte Zahl von identisch aussehenden Kästchen. Diese Kästchen möchte ich auf eine Oberfläche positionieren, und zwar auf Koordinaten, die erst zur Laufzeit bekannt werden (allerdings innerhalb eines gewissen Rahmens bleiben).

Dann muss jedes Kästchen auf Klicks reagieren, z.B. sollte ein neues Fenster aufgehn. Die info muss aber auf das angeklickte Kästchen bezogen sein.

Ich wäre für Denkanstöße sehr dankbar, ich hab nämlich keine Ahnung wie ich das angehn soll...hab schon mit ner Canvas rumprobiert, und auch schon mit von JPanel abgeleiteten Klassen, aber nix hat geklappt.
 

SuperSeppel13

Bekanntes Mitglied
Du könntest einerseits die Kästchen einzeln auf ein JPanel zeichnen (in paintComponent) und dann einen MouseListener schreiben, der bei jedem Klick auf das JPanel die Mauskoordinaten mit denen der Kästchen abgleicht und dann entsprechend reagiert.
Andererseits wäre es eleganter eine Klasse "Kästchen" zu schreiben, die beispielsweise von JPanel oder auch JButton erbt und auf Klicks individuell reagiert. Diese Kästchen könntest du dann auf einem Container ohne Layout auf die gewünschten Koordinaten verschieben.

Hope I helped...
 

qger

Mitglied
das mit der Kästchen-Klasse hab ich ausprobiert, aber sobald sobald ich eine oder mehrere auf den Frame adde, nimmt er nur den 1.

Java:
 JFrame f = new JFrame();
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setSize(100, 100);
        f.add(new GUIStack()); // Kästchen-Klasse
        f.add(new GUIStack()); //Kästchen-Klasse
        f.setVisible(true);

egal wieviele ich adde, er zeigt immer nur einen an :(
 

Ein Keks

Bekanntes Mitglied
das liegt daran dass der standartlayoutmanager von JFrame borderlayout ist, welcher jedes mal auf die gleiche stelle addet. Du musst mit setLayoutManager(...) einen anderen wählen (GridLayout scheint dafür passend) wobei du am besten erst ein JPanel auf das JFrame adden soltest(und dann natürlich bei dem das layout verändern) und darauf dann die Buttons. ( wenn du die absoluten positionen angeben willst musst du setLayoutManager(null) machen dann kannst du mit button.setLocation(x,y) die position setzen)
 
Zuletzt bearbeitet:

qger

Mitglied
Ich habe mittlerweile eine Lösung für mein Problem gefunden und schreibe sie hier nur rein, damit jemand der danach sucht sie auch findet, und sich nicht so damit abquälen muss wie ich.

Folgendes:
ich habe das Null-Layout gewählt und dann jedes einzelne Kästchen mittels setBorder der Zeichenfläche (in meinem Fall ein JPanel) genau positioniert.
 

Landei

Top Contributor
Diese Lösung ist nicht so toll. Was ist, wenn jemand das Fenster größer ziehen will? Oder ein anderes Look & Feel verwenden will? Um Layout-Manager wirst du bei Swing nicht herumkommen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Dynamische ListView-Größe, die bei Fenstergrößenänderung sich anpasst AWT, Swing, JavaFX & SWT 19
M Dynamische Zellengröße und Zeilenumbruch AWT, Swing, JavaFX & SWT 7
M Java FX dynamische Diagramme AWT, Swing, JavaFX & SWT 0
Q-bert Dynamische Komponente erzeugen AWT, Swing, JavaFX & SWT 6
4a61766120617274697374 dynamische Tree View AWT, Swing, JavaFX & SWT 2
P JavaFX Dynamische TableView AWT, Swing, JavaFX & SWT 14
G Dynamische ComboBox AWT, Swing, JavaFX & SWT 3
B Swing Dynamische JList mit Bildern AWT, Swing, JavaFX & SWT 4
S Jtable dynamische Spaltenbreite AWT, Swing, JavaFX & SWT 5
B SWT Dynamische GUI (Layoutmanager?) AWT, Swing, JavaFX & SWT 2
P Dynamische Seite zum basteln für den User AWT, Swing, JavaFX & SWT 8
B SWT TreeViewer dynamische Anzeige von Icons AWT, Swing, JavaFX & SWT 3
J Java - dynamische Anpassung an Fenstergröße? AWT, Swing, JavaFX & SWT 4
B Swing Dynamische JMenuBar AWT, Swing, JavaFX & SWT 2
C Swing Dynamische JComboBox (Filter) AWT, Swing, JavaFX & SWT 28
W "Dynamische JComboBoxes" AWT, Swing, JavaFX & SWT 5
N Swing Dynamische Controls AWT, Swing, JavaFX & SWT 5
C JTable dynamische erweitern AWT, Swing, JavaFX & SWT 2
T 2D-Grafik Statisches Hintergrundbild, dynamische Bilder drüber AWT, Swing, JavaFX & SWT 2
N Dynamische JFreechart updated UI nicht AWT, Swing, JavaFX & SWT 5
G Große dynamische ContextMenus erzeugen (Eclipse RCP) AWT, Swing, JavaFX & SWT 4
F Swing Dynamische Größenanpassung AWT, Swing, JavaFX & SWT 4
trash Dynamische JTable (SQL) AWT, Swing, JavaFX & SWT 5
L Dynamische Textgröße bei Buttons AWT, Swing, JavaFX & SWT 3
lordcarlos Dynamische und interaktive grafik AWT, Swing, JavaFX & SWT 5
T Swing JTable dynamische Zeilenhöhe AWT, Swing, JavaFX & SWT 5
U Dynamische Panel hinzufügen AWT, Swing, JavaFX & SWT 6
N Swing Dynamische JRadioButtons und Visual Editor AWT, Swing, JavaFX & SWT 4
S Swing Dynamische JPanels: Vertikales Strecken verhindern AWT, Swing, JavaFX & SWT 4
hdi dynamische Iteration über Components AWT, Swing, JavaFX & SWT 3
E Dynamische JComboBox AWT, Swing, JavaFX & SWT 3
F dynamische Ausgabe eines extenen Programms umleiten AWT, Swing, JavaFX & SWT 6
F Dynamische Swing Elemente AWT, Swing, JavaFX & SWT 10
G Dynamische JMenuBar AWT, Swing, JavaFX & SWT 2
T Dynamische Anpassung einer jCheckBox AWT, Swing, JavaFX & SWT 11
O Bindings, dynamische Verbindung (Vorbau mit Netbeans) AWT, Swing, JavaFX & SWT 10
G Dynamische Menüs mit Liste von MRU Dateien AWT, Swing, JavaFX & SWT 2
X Dynamische linien (Position und Länge) AWT, Swing, JavaFX & SWT 4
L Dynamische Buttons erstellt, aber wie ein Event zuweisen? AWT, Swing, JavaFX & SWT 11
T dynamische anzeige? AWT, Swing, JavaFX & SWT 4
S Dynamische Ausgabe im JTextField AWT, Swing, JavaFX & SWT 7
K dynamische jlabels AWT, Swing, JavaFX & SWT 21
M dynamische Grafik in JFrame einbetten AWT, Swing, JavaFX & SWT 2
G JTable dynamische Darstellung der ankommenden Daten AWT, Swing, JavaFX & SWT 19
G JTextField & Dynamische Grössenänderung? AWT, Swing, JavaFX & SWT 8
K TableLayout - dynamische Elemente zu spät ge-updated AWT, Swing, JavaFX & SWT 3
O Dynamische Checkboxen AWT, Swing, JavaFX & SWT 21
T Dynamische GUI's AWT, Swing, JavaFX & SWT 10
T Dynamische Look&Feels AWT, Swing, JavaFX & SWT 4
K dynamische Bilder laden AWT, Swing, JavaFX & SWT 5
Informatiknoob AWT Zahlenraten (eine Zahl zwischen 1 und 10) AWT, Swing, JavaFX & SWT 1
S Swing Zahl der Zeilenumbrüche in einer JTextArea bestimmen AWT, Swing, JavaFX & SWT 1
MiMa Integer Zahl in Textfield ausgeben AWT, Swing, JavaFX & SWT 12
K Zahl mit paintComponen "zeichnen"? AWT, Swing, JavaFX & SWT 3
R Zahl aus Zahlenbereich auswählen AWT, Swing, JavaFX & SWT 9
G Linie nach Höhe einer Zahl zeichnen? AWT, Swing, JavaFX & SWT 3
L Farbregler - Werte als Zahl ausgeben - Color AWT, Swing, JavaFX & SWT 5
H JavaFX Gedrehter Text auf Canvas (Positionierung) AWT, Swing, JavaFX & SWT 6
H LayoutManager Probleme mit Positionierung/Abständen der Komponenten AWT, Swing, JavaFX & SWT 14
Ernesto95 JavaFX Absolute Positionierung und Skalierung AWT, Swing, JavaFX & SWT 1
B LayoutManager Positionierung von Buttons´s AWT, Swing, JavaFX & SWT 2
Kenan89 LayoutManager MigLayout Positionierung von Panels AWT, Swing, JavaFX & SWT 4
S Swing Positionierung eines Labels in einem Panel AWT, Swing, JavaFX & SWT 2
B LayoutManager Positionierung zwischen zwei Layoutkomponenten AWT, Swing, JavaFX & SWT 2
R Swing Positionierung von Komponenten AWT, Swing, JavaFX & SWT 5
J Punkt-genaue Positionierung von SWT-Komponenten AWT, Swing, JavaFX & SWT 10
A Positionierung von Komponenten in JFrame AWT, Swing, JavaFX & SWT 6
Strahlungsleck Swing Positionierung von Elementen im GridBagLayout AWT, Swing, JavaFX & SWT 2
M jPopupMenu - Problem bei der Positionierung AWT, Swing, JavaFX & SWT 3
V textarea Problem Positionierung AWT, Swing, JavaFX & SWT 2
X Relative positionierung in einem JInternalFrame AWT, Swing, JavaFX & SWT 3
F Graphics2D scale und Positionierung einer TextArea AWT, Swing, JavaFX & SWT 8
G positionierung des eingabefensters AWT, Swing, JavaFX & SWT 2
R JFrame -- Variable Positionierung durch Window Manager? AWT, Swing, JavaFX & SWT 2
D Probleme bei der Positionierung von JPopupMenu AWT, Swing, JavaFX & SWT 2
K Positionierung in der Menüleiste AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben