Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.java > #13227
| From | Patrick Roemer <sangamon@netcologne.de> |
|---|---|
| Newsgroups | de.comp.lang.java |
| Subject | Re: Java Swing: alle Elemente eines JFrames durchlaufen |
| Date | 2018-11-30 14:38 +0100 |
| Organization | news.netcologne.de |
| Message-ID | <ptrehg$bbd$1@newsreader4.netcologne.de> (permalink) |
| References | <90ktvdt94icmm7d1vk9nrakimqstaa0ojo@4ax.com> <ptn2c1$6h9$1@newsreader4.netcologne.de> <9vuvvdtqjv4rp1rcehsk50jhcek69rgbbv@4ax.com> |
Responding to Rainer:
> On Wed, 28 Nov 2018 22:46:41 +0100, Patrick Roemer
> <sangamon@netcologne.de> wrote:
>>Bliebe noch die Frage, wozu man sowas überhaupt braucht. Um etwa
>>Checkboxes/RadioButtons (~ Optionsfelder?) gruppiert zu kontrollieren,
>>gibt es sicherlich bessere Möglichkeiten - z.B. sie gleich bei Erzeugung
>>in einer geeigneten Collection vorzuhalten.
>
> Könnte ich dazu ein Code-Beispiel haben?
Schwierig, wenn man nicht genau weiß, was Du eigentlich erreichen
willst. Im simpelsten Fall sowas:
<snip>
import javax.swing.*;
import java.awt.FlowLayout;
import java.awt.event.*;
import java.util.*;
import java.util.stream.*;
import static java.util.stream.Collectors.*;
public class JavaSwingCheck {
public static void main(String[] args) {
SwingUtilities.invokeLater(JavaSwingCheck::buildUI);
}
private static void buildUI() {
JFrame frame = new JFrame("Check");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(new FlowLayout());
List<JCheckBox> checks =
Stream.of("A", "B", "C").map(JCheckBox::new).collect(toList());
checks.forEach(c -> frame.getContentPane().add(c));
Action action = new AbstractAction("Off!") {
@Override public void actionPerformed(ActionEvent e) {
checks.forEach(c -> c.setSelected(false));
}
};
JButton button = new JButton(action);
frame.getContentPane().add(button);
frame.pack();
frame.setVisible(true);
}
}
</snip>
In einer echten, komplexeren Applikation würde man eh ein
Ordnungsprinzip für die UI-Logik haben wollen (MVC, Presentation
Model,...), und da gäbe es dann jeweils "natürliche" Stellen, an die
derartige Logik hingehört.
Viele Grüße
Patrick
Back to de.comp.lang.java | Previous | Next — Previous in thread | Next in thread | Find similar
Java Swing: alle Elemente eines JFrames durchlaufen Rainer <Rainer.Poop@Rcpt.at> - 2018-11-28 18:36 +0100
Re: Java Swing: alle Elemente eines JFrames durchlaufen Patrick Roemer <sangamon@netcologne.de> - 2018-11-28 22:46 +0100
Re: Java Swing: alle Elemente eines JFrames durchlaufen Rainer <Rainer.Poop@Rcpt.at> - 2018-11-29 15:48 +0100
Re: Java Swing: alle Elemente eines JFrames durchlaufen Patrick Roemer <sangamon@netcologne.de> - 2018-11-30 14:38 +0100
Re: Java Swing: alle Elemente eines JFrames durchlaufen Rainer <Rainer.Poop@Rcpt.at> - 2018-11-29 15:54 +0100
Re: Java Swing: alle Elemente eines JFrames durchlaufen Rainer <Rainer.Poop@Rcpt.at> - 2018-11-29 16:45 +0100
csiph-web