Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.gui > #1200

Re: JButton is created "s

From "Phil Powell" <phil.powell@THRWHITE.remove-dii-this>
Subject Re: JButton is created "s
Message-ID <1174073379.298635.126130@y66g2000hsf.googlegroups.com> (permalink)
Newsgroups comp.lang.java.gui
References <UJBKh.24561$Cp1.9226@newsfe14.lga>
Date 2011-04-27 15:31 +0000
Organization TDS.net

Show all headers | View raw


  To: comp.lang.java.gui
On Mar 16, 2:54 pm, Knute Johnson <nos...@rabbitbrush.frazmtn.com>
wrote:
> Phil Powell wrote:
> > On Mar 16, 2:04 pm, Knute Johnson <nos...@rabbitbrush.frazmtn.com>
> > wrote:
> >> Phil Powell wrote:
> >>> On Mar 16, 12:32 pm, Knute Johnson <nos...@rabbitbrush.frazmtn.com>
> >>> wrote:
> >>>> Phil Powell wrote:
> >>>>>       /**
> >>>>>          * Generate value and conditions for {@link #backButton}
> >>>>>          */
> >>>>>         private void generateBackButton() {
> >>>>>             SimpleBrowser.this.backButton = new JButton("<--");
> >>>>>             SimpleBrowser.this.backButton.addActionListener(new
> >>>>> ActionListener() {
> >>>>>                 public void actionPerformed(ActionEvent evt) {
> >>>>>                     SwingUtilities.invokeLater(new Runnable() {
> >>>>>                         public void run() {
> >>>>>                             SimpleBrowser.hasClickedBack = true;
> >>>>>                             SimpleBrowser.this.currentHistoryIndex--;
> >>>>>                             SimpleBrowser.this.setURL(
> >>>>> (URL)SimpleBrowser.this.actualHistoryURLVector.get(
> >>>>> SimpleBrowser.this.currentHistoryIndex)
> >>>>>                                     );
> >>>>> SimpleBrowser.this.setURLPath(SimpleBrowser.this.getURL().toString());
> >>>>> SimpleBrowser.this.processor.processURL(SimpleBrowser.this.getURL());
> >>>>>                         }
> >>>>>                     });
> >>>>>                 }
> >>>>>             });
> >>>>>             SimpleBrowser.this.backButton.setSelected(false);
> >>>>> SimpleBrowser.this.backButton.setFont(SimpleBrowserGlobals.FONT);
> >>>>>         }
> >>>>> The moment this particular JButton is created it is created as
> >>>>> "selected", even though I have done "setSelected(false)". It does not
> >>>>> fire unless I click onto it, of course, but it appears as if I did and
> >>>>> that's not good. Is there a way I can fix this?
> >>>>> Thanx
> >>>>> Phil
> >>>> Phil:
> >>>> You don't need the Runnable inside of the ActionListener to make it run
> >>>> on the EDT.  The ActionListener is running on the EDT.
> >>> That I did not know, thanx.  Does this also apply to
> >>> HyperlinkListener, PopupMenuListener and PropertyChangeListener?
> >> Yes.
>
> >>>> Are you sure it is selected and not just in focus?
> >>> I tried
> >>> SimpleBrowser.this.backButton.setFocusable(false);
> >>> But it still comes "focused", or rather, the JButton looks like you
> >>> clicked it even though you haven't yet done so.
> >> Something always gets the focus when a GUI is made visible.  Just send
> >> the focus to some other component for example your JTextField that takes
> >> the URL string.  Do it after the GUI is visible.
>
> > Curious.  The JButton look is now restored to normal the moment I did
> > both setFocusable(false) and then immediately after that
> > setSelected(false).
>
> Normal is what you are trying to change.  When the GUI is made visible
> the first focusable component takes the focus.  When you made the
> JButton not focusable some other component took the focus.  Focus is
> normal behaviour.  If you don't want that then fine but it is there so
> that you can press the space bar and activate the button.
>
> Selected on a JButton is when you are holding the mouse button
> depressed.  That has nothing to do with what is happening here.
>

Sorry my terminology is not as educated as those of others; I'm prone
to using the "wrong term" for what I mean to say.  The JButton looks
just like - as if - you are in the process of clicking the button with
your mouse.  Like if you press a form button on a webpage; the JButton
looks exactly like that; there is a thin black box around the JButton
text; the colorization appears as if selected as well as focused.  The
button looks like that even if I have

backButton.setFocusable(false);

However, the moment I use *BOTH* of these lines:

backButton.setFocusable(false);
backButton.setSelected(false);

The button looks like I have *NOT YET* clicked onto it as well as
focus being diverted away from that button.

I hope that makes more sense.

> --
>
> Knute Johnson
> email s/nospam/knute/

---
 * Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet!
--- Synchronet 3.15a-Win32 NewsLink 1.92
Time Warp of the Future BBS - telnet://time.synchro.net:24

Back to comp.lang.java.gui | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

JButton is created "selec "Phil Powell" <phil.powell@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
  Re: JButton is created "s "Knute Johnson" <knute.johnson@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
    Re: JButton is created "s "Phil Powell" <phil.powell@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
      Re: JButton is created "s "Knute Johnson" <knute.johnson@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
        Re: JButton is created "s "Phil Powell" <phil.powell@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
          Re: JButton is created "s "Knute Johnson" <knute.johnson@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
            Re: JButton is created "s "Phil Powell" <phil.powell@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
              Re: JButton is created "s "Knute Johnson" <knute.johnson@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000
  Re: JButton is created "s "Brandon McCombs" <brandon.mccombs@THRWHITE.remove-dii-this> - 2011-04-27 15:31 +0000

csiph-web