Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #22037
| Newsgroups | comp.lang.java.programmer |
|---|---|
| Date | 2013-02-02 21:11 -0800 |
| References | <3c0d69c3-591d-4d99-8c13-30a0fd1684b3@googlegroups.com> <design-20130203013946@ram.dialup.fu-berlin.de> <594d0498-0081-4c87-9a5c-afe37246636d@googlegroups.com> <kekqgv$lt5$1@dont-email.me> |
| Message-ID | <fbf41347-36f8-45c9-9699-736a48576909@googlegroups.com> (permalink) |
| Subject | Re: Design Patterns |
| From | Doug Mika <dougmmika@gmail.com> |
So passing MainWindow to MenuWindow is one possible solution. But what are the other three. No, this is not to be a school assignmennt, I'm looking for a clean and proper way to do this.
On Saturday, February 2, 2013 10:54:07 PM UTC-6, markspace wrote:
> On 2/2/2013 7:43 PM, Doug Mika wrote:
>
> > MainWindow.java and MenuBar.java are instantiated in Program.java
>
> > How can events in MenuWindow.java cause changes in MainWindow.java
>
> > ie. what's the cleanest way to do this?
>
>
>
> The thing is, this is called "programming." There's a very large number
>
> of ways to do this, and they all are valid, given various design
>
> assumptions.
>
>
>
> Static variables, "globals" as I think you mentioned, are OK if the
>
> program is small and not going to be maintained (i.e., a small school
>
> assignment). More robust methods all make some assumption as to rates
>
> of code change, presence of frameworks, team size, total costs of
>
> ownership, etc.
>
>
>
> Your immediate problem could be solved by using constructors, and just
>
> hiding and showing various windows, rather than destroying them and
>
> re-creating them.
>
>
>
> public static void main( String... args ) {
>
> // startup
>
> ...
>
> createAndShowGui();
>
> ...
>
> }
>
>
>
> private void createAndShowGui() {
>
> SwingUtilities.invokeLater( new Runnable() {
>
> MainWindow mw = new MainWindow();
>
> MenuBar mb = new MenuBar();
>
> MenuWindow menuw = new MenuWindow( mw );
>
> mw.pack();
>
> mw.setVisible( true );
>
> }; );
>
> }
>
>
>
> Now MenuWindow has a reference to mw so it can manipulate mw. But I
>
> can't think of at least three other ways to do this, and they all have
>
> advantages and short-comings, so you have to decide what is best for
>
> your programs.
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Design Patterns dougmmika@gmail.com - 2013-02-02 16:17 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-02 19:39 -0500
Re: Design Patterns Marcel Müller <news.5.maazl@spamgourmet.org> - 2013-02-03 18:52 +0100
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-03 14:23 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-08 23:57 -0500
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-09 11:10 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-09 19:36 -0500
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-09 23:44 -0800
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-09 23:47 -0800
Re: Design Patterns "John B. Matthews" <nospam@nospam.invalid> - 2013-02-10 12:28 -0500
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-10 13:35 -0500
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-10 13:36 -0500
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-10 23:12 -0800
Re: Design Patterns "John B. Matthews" <nospam@nospam.invalid> - 2013-02-09 19:45 -0500
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-02 20:17 -0500
Re: Design Patterns Doug Mika <dougmmika@gmail.com> - 2013-02-02 19:43 -0800
Re: Design Patterns markspace <markspace@nospam.nospam> - 2013-02-02 20:54 -0800
Re: Design Patterns Doug Mika <dougmmika@gmail.com> - 2013-02-02 21:11 -0800
Re: Design Patterns markspace <markspace@nospam.nospam> - 2013-02-03 08:24 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-08 23:41 -0500
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-02 21:57 -0800
Re: Design Patterns Roedy Green <see_website@mindprod.com.invalid> - 2013-02-03 06:38 -0800
Re: Design Patterns Joerg Meier <joergmmeier@arcor.de> - 2013-02-04 17:06 +0100
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-04 12:38 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-04 21:31 -0500
Re: Design Patterns Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2013-02-04 21:03 -0800
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-04 21:25 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 19:54 -0500
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-05 17:51 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 20:54 -0500
Re: Design Patterns lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-02-05 09:43 +0000
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-05 13:03 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 20:09 -0500
Re: Design Patterns markspace <markspace@nospam.nospam> - 2013-02-05 13:56 -0800
Re: Design Patterns markspace <markspace@nospam.nospam> - 2013-02-05 14:30 -0800
Re: Design Patterns Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2013-02-05 14:33 -0800
Re: Design Patterns lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-02-06 09:03 +0000
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 20:07 -0500
Re: Design Patterns Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-02-05 09:10 -0500
Re: Design Patterns Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-02-05 13:20 -0500
Re: Design Patterns Lew <lewbloch@gmail.com> - 2013-02-05 13:10 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 20:11 -0500
Re: Design Patterns Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2013-02-05 09:53 -0800
Re: Design Patterns Arved Sandstrom <asandstrom2@eastlink.ca> - 2013-02-05 20:17 -0400
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 19:50 -0500
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-05 20:34 -0500
Re: Design Patterns Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2013-02-06 08:40 -0800
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-08 23:38 -0500
Re: Design Patterns Arne Vajhøj <arne@vajhoej.dk> - 2013-02-04 21:41 -0500
csiph-web