Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.java > #13227
| Path | csiph.com!feeder.erje.net!1.eu.feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2001-4dd4-1ada-0-4d12-bcab-8549-5911.ipv6dyn.netcologne.de!not-for-mail |
|---|---|
| From | Patrick Roemer <sangamon@netcologne.de> |
| Newsgroups | de.comp.lang.java |
| Subject | Re: Java Swing: alle Elemente eines JFrames durchlaufen |
| Date | Fri, 30 Nov 2018 14:38:56 +0100 |
| Organization | news.netcologne.de |
| Distribution | world |
| Message-ID | <ptrehg$bbd$1@newsreader4.netcologne.de> (permalink) |
| References | <90ktvdt94icmm7d1vk9nrakimqstaa0ojo@4ax.com> <ptn2c1$6h9$1@newsreader4.netcologne.de> <9vuvvdtqjv4rp1rcehsk50jhcek69rgbbv@4ax.com> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | 8bit |
| Injection-Date | Fri, 30 Nov 2018 13:38:56 -0000 (UTC) |
| Injection-Info | newsreader4.netcologne.de; posting-host="2001-4dd4-1ada-0-4d12-bcab-8549-5911.ipv6dyn.netcologne.de:2001:4dd4:1ada:0:4d12:bcab:8549:5911"; logging-data="11629"; mail-complaints-to="abuse@netcologne.de" |
| User-Agent | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.24) Gecko/20100411 Thunderbird/2.0.0.24 Mnenhy/0.7.6.0 |
| In-Reply-To | <9vuvvdtqjv4rp1rcehsk50jhcek69rgbbv@4ax.com> |
| Content-Language | en-US |
| Xref | csiph.com de.comp.lang.java:13227 |
Show key headers only | View raw
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