Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.gui > #1200
| 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 |
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 | Next — Previous in thread | Next in thread | Find similar | Unroll 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