开发者

User interface choice for managing an "orders" table

开发者 https://www.devze.com 2023-02-18 16:11 出处:网络
I\'m using VB Net, but this is entirely a question about user interface, not coding. I want to \"manage\" a table of \"orders.\" Orders is a typical table with a foreign key pointing to a customer, a

I'm using VB Net, but this is entirely a question about user interface, not coding.

I want to "manage" a table of "orders." Orders is a typical table with a foreign key pointing to a customer, and a one-to-many relationship with a "details" table. To manage orders means to enter new orders, a开发者_运维百科dd details to orders, record payments, print a list of orders, cancel orders, mark orders shipped, print one order, etc., etc. These tasks can be divided into tasks that affect single orders (cancel an order) and tasks that affect multiple orders (print a list of orders).

That task division led me to this user interface: present a form/window that displays by default a list of orders, and provide a button that switches the view from list mode to single-order mode. Each mode then provides the buttons for its tasks.

I first implemented this with panels, putting the controls for each view into its own panel, and then superimposing the panels. I then use hide and show methods to switch between panels, effectively switching between views. It works, but meh...

Would it be better to use a tabbed control, and put each view on its own tab? I'm not trying to re-invent any wheels. I know nobody gets fired for making it look like a Microsoft app. LOL :) But I haven't seen any retail applications to copy from.


I'd argue that your "multiple panels" approach IS tabs, just without the tab part. In reality, tab controls do basically what you've already done with code, they just hide that behind a convenient design time facade.

Still, it's the same thing.

E James answer is pretty good. Would it make sense to put both on screen at a time? is this a touch screen app or a traditional windows app? How sophisticated is the target user?

Those are a few questions that should drive how complex you let the screen get.


Do you have room to show the list and all of the possible controls? If so, I would start with all controls disabled. When you select a single order, only the single order controls would be enabled, and when you select multiple orders, only the multiple orders controls would be enabled.

I would also put the most common tasks right into the list, if possible, so that only one click is required for frequent tasks.

0

精彩评论

暂无评论...
验证码 换一张
取 消