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


Groups > comp.lang.java.programmer > #23735

Re: need help on this.

From Eric Sosman <esosman@comcast-dot-net.invalid>
Newsgroups comp.lang.java.programmer
Subject Re: need help on this.
Date 2013-04-30 10:48 -0400
Organization A noiseless patient Spider
Message-ID <klole7$lhp$1@dont-email.me> (permalink)
References <1ea6b46f-380f-4839-b4dc-74d72a10b5e6@googlegroups.com>

Show all headers | View raw


On 4/30/2013 9:18 AM, wee wrote:
> i have this code:
>
> public class ArrayUI extends JFrame {
> 	public JPanel pane = new JPanel();
> 	public JTextField[] item = new JTextField[20];
>
> 	public ArrayUI() {
> 		super("title");
> 		FlowLayout fl = new FlowLayout();
> 		setLayout(fl);
> 		Handler handle = new Handler();
> 		
> 		for (int i = 0; i < item.length; i++) {
> 			item[i] = new JTextField(("Text here " + i), 10);
> 			item[i].addMouseListener(handle);
> 			pane.add(item[i]);
> 		}
> 		add(pane);
> 		pack();
> 	}
> 	
> 	private class Handler extends MouseAdapter {
>               public void mouseClicked(MouseEvent e){
>
>               }
> 	  // i want to get the index of the array (item[]) of the JTextField
> 	  // object that received the mouseClicked action.
> 	  // any idea how i can do that?
> 	  // using the getSource() method returns the object itself,
> 	  // not the index of the array. help please..

     Get the source object, then walk through the array, index
by index, until you find it.

     My question, though: Why do you want the array index?  If
the answer is "Because there are other arrays with associated
information, and I need the index to access it," there may be
better approaches.  Here are a few:

     - You might store the extra information directly on the
       JTextField object, possibly with setName() -- or maybe
       with setAction(), if that's more appropriate.

     - If none of the JTextField's attributes seem a suitable
       home for what you want to store, write a WeeTextField
       class that extends JTextField and just carries the
       extra information around.  Note that you needn't write
       much code; all the real work happens in the JTextField
       superclass, and you just deal with the "decorations."

     - Put the extra information in the Handler class, and use
       a separate Handler instance for each JTextField instead
       of making them all share the same instance.

> 	}
> }
>


-- 
Eric Sosman
esosman@comcast-dot-net.invalid

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


Thread

need help on this. wee <rbulseco@gmail.com> - 2013-04-30 06:18 -0700
  Re: need help on this. Jeff Higgins <jeff@invalid.invalid> - 2013-04-30 09:50 -0400
    Re: need help on this. Jeff Higgins <jeff@invalid.invalid> - 2013-04-30 09:58 -0400
      Re: need help on this. Jeff Higgins <jeff@invalid.invalid> - 2013-04-30 10:09 -0400
    Re: need help on this. Jeff Higgins <jeff@invalid.invalid> - 2013-04-30 10:01 -0400
      Re: need help on this. Jeff Higgins <jeff@invalid.invalid> - 2013-04-30 10:39 -0400
  Re: need help on this. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-04-30 10:48 -0400
  Re: need help on this. Daniele Futtorovic <da.futt.news@laposte-dot-net.invalid> - 2013-04-30 17:02 +0200
  Re: need help on this. wee <rbulseco@gmail.com> - 2013-04-30 17:41 -0700
    Re: need help on this. wee <rbulseco@gmail.com> - 2013-05-06 21:29 -0700
      Re: need help on this. Eric Sosman <esosman@comcast-dot-net.invalid> - 2013-05-07 08:14 -0400
        Re: need help on this. wee <rbulseco@gmail.com> - 2013-05-10 03:52 -0700

csiph-web