Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / GUI / December 2007

Tip: Looking for answers? Try searching our database.

JTable UI from User's point of view.

Thread view: 
Roedy Green - 29 Dec 2007 04:27 GMT
I was wondering what the consensus is on how a JTable should behave:

1. What does the user to do trigger a cell edit? What does he do to
edit the next cell over?

2. what does the user to do delete a row?

3. what does the user do to insert a new row? Does he type it in place
or does he type it somewhere else then it jumps into place?
Signature

Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com

Stefan Ram - 29 Dec 2007 04:50 GMT
>I was wondering what the consensus is on how a JTable should behave:

 It should act like the spreadsheet or platform table he
 normally uses.

 The programmer can not know what this spreadsheet or platform is.

 But often it might be Microsoft® Excel and Microsoft® Windows.

 So:

     The application, whenever possible, should offer a
     »Windows L&F« and

     The Windows L&F should behave like Microsoft® Excel
     in this regard.

>1. What does the user to do trigger a cell edit?

 In Excel, a keyboard user would use [F2].

>What does he do to edit the next cell over?

 I do not know the meaning of »to edit something over«,
 so I will ignore »over« and answer:

|What does he do to edit the next cell?

 (If he is editing a cell right now: )Terminate the edit mode.
 Move to the next cell.
 Activate the edit mode as before.

>2. what does the user to do delete a row?

 Select the row.
 Issue a delete-row command via a menu.

>3. what does the user do to insert a new row?

 Select a below.
 Issue a insert-row command via a menu to insert
 a row above the select row.

>Does he type it in place or does he type it somewhere
>else then it jumps into place?

 In Excel, the above can be done via mouse, keyboard,
 or programmatically, via a macro (in VBA).
Stefan Ram - 29 Dec 2007 05:17 GMT
Supersedes: <UI-20071229054346@ram.dialup.fu-berlin.de>

>I was wondering what the consensus is on how a JTable should behave:

 It should act like the spreadsheet or platform table he
 normally uses.

 The programmer can not know what this spreadsheet or platform is.

 But often it might be Microsoft® Excel and Microsoft® Windows.

 So:

     The application, whenever possible, should offer a
     »Windows L&F« and

     The Windows L&F should behave like Microsoft® Excel
     in this regard.

>1. What does the user to do trigger a cell edit?

 In Excel, a keyboard user would use [F2].

>What does he do to edit the next cell over?

 I do not know the meaning of »to edit something over«,
 so I will ignore »over« and answer:

|What does he do to edit the next cell?

 (If he is editing a cell right now: )Terminate the edit mode.
 Move to the next cell.
 Activate the edit mode as before.

>2. what does the user to do delete a row?

 Select the row.
 Issue a delete-row command via a menu.

>3. what does the user do to insert a new row?

 Select a row.
 Issue a insert-row command via a menu to insert
 a row above the select row.

>Does he type it in place or does he type it somewhere
>else then it jumps into place?

 In Excel, the above can be done via mouse, keyboard,
 or programmatically, via a macro (in VBA).
Roedy Green - 29 Dec 2007 05:52 GMT
>>What does he do to edit the next cell over?
>
>  I do not know the meaning of »to edit something over«,
>  so I will ignore »over« and answer:

Let us say you have just entered the data for A1.

The normal thing, is the use would then enter data for B1.

You could make him select and hit F2. or your might automatically jump
to B1 when the user hits some key to terminate entering data for A1.
Signature

Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com

Stefan Ram - 29 Dec 2007 06:30 GMT
>You could make him select and hit F2. or your might automatically jump
>to B1 when the user hits some key to terminate entering data for A1.

 Yes. In Microsoft® Excel, IIRC, this behavior can be
 configurated via an »Options« dialog to move either

   - not,
   - right,
   - left,
   - up, or
   - down.
Lew - 29 Dec 2007 06:40 GMT
>> You could make him select and hit F2. or your might automatically jump
>> to B1 when the user hits some key to terminate entering data for A1.
[quoted text clipped - 7 lines]
>     - up, or
>     - down.

The default direction is almost always not what I want.  When it moves I want
"ENTER" to leave me in the same cell, and when it doesn't I want "ENTER" to
move me right, for some parts of the sheet, or down, for others.

Having the software tell me which direction to move annoys me.  Having it obey
my choice is satisfying.

Having the cursor jump to another cell without letting the user choose to
configure the behavior is not good.

Signature

Lew

Daniel Pitts - 29 Dec 2007 18:54 GMT
>>> You could make him select and hit F2. or your might automatically jump
>>> to B1 when the user hits some key to terminate entering data for A1.
[quoted text clipped - 17 lines]
> Having the cursor jump to another cell without letting the user choose
> to configure the behavior is not good.

As I recall, in Excel, Tab moves right, enter moves to the next row on
the column that you last started typing in. For instance, if you click
in cell A5, type, tab, type, tab, type, enter, you will end in cell B5,
having typed in A5, A6, and A7.

Signature

Daniel Pitts' Tech Blog: <http://virtualinfinity.net/wordpress/>

RedGrittyBrick - 30 Dec 2007 09:26 GMT
> I was wondering what the consensus is on how a JTable should behave:

The first things that popped into my mind were ...

> 1. What does the user to do trigger a cell edit?

Double click or press F2

> What does he do to edit the next cell over?

Tab

> 2. what does the user to do delete a row?

Click the row's label to select the row then press Del

> 3. what does the user do to insert a new row?

Er, select a row then press Ins?
Select Row, Insert from a menu?

> Does he type it in place  or does he type it somewhere else then it jumps into place?

In place probably.

For this last case, as a programmer I find it a lot easier to use the
latter approach for database applications where rows represent records
in a database table. I find it harder to provide in-place editing,
partly because of the issues you raised. For example, when updating a
table of say exchange rates, as a user you'd want to enter a number,
press *one* key to both move to the same column of the next row *and*
start editing. I think this may be hard to do with JTable, especially
when overriding the default cell editor with some other Swing widget.

I guess that it may depend on whether you want to give the user the
illusion that the backing data store is being directly updated as they
type or whether you want them to be aware of a row (record) as a unit of
update.


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.