Re: Windows Forms layout - how to do it?

  • From: "RicksPlace" <ofbgmail@xxxxxxxxx>
  • To: <programmingblind@xxxxxxxxxxxxx>
  • Date: Sun, 7 Aug 2011 09:21:40 -0400

Hi: Jamal is spot on. You can calculate the positions of your controls by viewing your screen as some gometric picture in your mind. Perhaps a quadrant layout with 4 squares making up the screen. Then you can group by function diferent controls in each quadrant. Perhaps some checkboxes and a label and ListBox related to selecting a time and date in the upper left, then perhaps another ListBox and label to select a Person or something else in the upper right. Then perhaps a Car Type or whatever in the lower left and perhaps a few buttons like OK, Cancel and Clear at eht bottom of the right lower quadrant. If you have some controls that don't quite fit you can extend horizontally or vertically a quadrant, merge to or more of them to make a full screen horizontal box or vertical box etc... This might not be the prettiest layout but it works and is readable enough for sighted users if you do it correctly.

Rick USA
----- Original Message ----- From: "Jamal Mazrui" <empower@xxxxxxxxx>
To: <ProgrammingBlind@xxxxxxxxxxxxx>
Sent: Friday, August 05, 2011 12:01 PM
Subject: RE: Windows Forms layout - how to do it?


Microsoft guidelines on user interface design are available at

http://msdn.microsoft.com/en-us/library/ms997619

Support for creating GUIs in the Windows Forms designer has been part of the JAWS scripts for VS 2005 or 2008, available at

http://EmpowermentZone.com/msenv2005.exe
(or .zip extension for a manual install).

Using a command-line compiler does not necessarily mean creating console apps. Each .NET command line compiler can be passed a parameter that determines whether a console-mode or a Windows-mode executable is created.

In general, a screen reader user tends to lay out forms either via arithmetic calculations of control positions, sizes, and spacing, or via layout containers that do much of that work automatically. Nearly every development framework these days includes such layout containers as part of its API or object model. In the .NET Framework, they are called FlowLayoutPanel and TableLayotPanel. Lbc uses these behind the scenes.

LayoutPanel
sizes

Jamal

-----Original Message-----
From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Bue Vester-Andersen
Sent: Friday, August 05, 2011 10:49 AM
To: 'Jamal Mazrui'; programmingblind@xxxxxxxxxxxxx
Subject: SV: Windows Forms layout - how to do it?

Hi Jamal,

Thanks for the reply. I will try what you have mentioned. I then suggest
that we move the discussion off the list, so we don't make too much noice.

I am still very interested in knowing how everybody else on the list is
making a gui with a decent layout, Windows forms or not. You can't mean to
tell me that you are all stuck with making command line driven console apps
:-)

Best regards
Bue


-----Oprindelig meddelelse-----
Fra: Jamal Mazrui [mailto:empower@xxxxxxxxx]
Sendt: 5. august 2011 15:59
Til: programmingblind@xxxxxxxxxxxxx
Cc: bva_lists@xxxxxxxxxxxxxxxxxx
Emne: Re: Windows Forms layout - how to do it?

Hi,
I use a text editor rather than Visual Studio for .NET development, so was
hoping that someone else might have a solution to the problem you
experienced compiling with Homer.NET.  As its author, I would like to work
with you to resolve the problem. If possible, please try the following and
report yur results.

I think there is a way that VS hosts a program that is under development,
rather than launching that program to run independently. I am not sure, but
think that is where the problem is arising.  Can you compile the code and
run it without this hosting scenario?  For example, I vaguely recall that
Control+F5 compiles, whereas F5 runs a program in a hosted mode.  If
compiling is successful, then try running the program outside of VS, or look
for menu options on a project or build menu that allow you to run the
program independently (not hosted for debugging, etc.).

If that does not work, try compiling from the command line with the C#
compiler, csc.exe.  There is a VS Start Menu option for opening a console
mode environment that sets appropriate paths to the command line compilers.
You will need to reference assemblies as appropriate when calling the
compiler.  the batch files distributed with Homer.NET illustrate how this
may be done.

I realize that you may prefer to use VS for everything rather than a
command-line compiler for some tasks. This would help us identify where the
problem lies.

Jamal

On 8/5/2011 6:14 AM, Bue Vester-Andersen wrote:
Hi,

I am wondering how you guys make a Windows forms user interface with a
decent layout. I am congenitally blind, and I have always found it a
great pain to make a layout that would work at all.

- which controlls should be where on the form, and where should they
be docked?

- What should be aligned with what? For instance, a text label and a
text box have different hights, so do you align to top bottom or middle?

How do you ensure that each controll has room enough for its text - at
any time? What when you translate the text into another language? What
when the dialog is resized?

Should I just switch to something completely different? WPF is not
terribly accessible, at least not with JAWS for Windows., which
doesn't support UI automation very well.

I could continue until next christmas. Do you all have sighted persons
to scrutinize your forms layout when you change a single byte of code?

I had hoped that I could use Layout by Code but no luck so far. The
thread about that seems to have dissolved into a discussion about to
IDE or not to IDE.

Do any of you know about a layout engine that can solve at least some
of the problems? If not, can you point me to a tutorial on how to make
a good layout? The .net documentation is excelent if you know what you
want to achieve, but I guess that is part of the problem. I don't know
what my form is really supposed to look like, and I don't know when to
dock the controlls left right or center.

Hope someone can help me.

Best regards
Bue

__________
View the list's information and change your settings at
//www.freelists.org/list/programmingblind


__________
View the list's information and change your settings at
//www.freelists.org/list/programmingblind


__________
View the list's information and change your settings at //www.freelists.org/list/programmingblind


__________
View the list's information and change your settings at //www.freelists.org/list/programmingblind

Other related posts: