我是一名盲人大学生,正在介绍专注于用户界面设计的编程课。该课程正在使用Processing,这是完全无法访问的。我正在寻找一种语言,可以让我无需拖放即可创建GUI,并且希望能够足够聪明地完成大部分布局,而不会强制我指定像素中的控制位置。快速创建用户界面而不拖放的最佳语言?
我知道Perl,Java,C/C++,c#和HTML。我正在考虑创建HTA应用程序。我唯一的要求是该语言必须在MS Windows下运行,并且不得使用SWING或GTK作为底层工具箱。
我是一名盲人大学生,正在介绍专注于用户界面设计的编程课。该课程正在使用Processing,这是完全无法访问的。我正在寻找一种语言,可以让我无需拖放即可创建GUI,并且希望能够足够聪明地完成大部分布局,而不会强制我指定像素中的控制位置。快速创建用户界面而不拖放的最佳语言?
我知道Perl,Java,C/C++,c#和HTML。我正在考虑创建HTA应用程序。我唯一的要求是该语言必须在MS Windows下运行,并且不得使用SWING或GTK作为底层工具箱。
谈到作为一个盲人程序员:
总之,WPF很好,但要确保你的屏幕阅读器能够与这类应用程序一起工作。下一个最好的选择可能是WinForms。如果你喜欢布局编码然后使用它,但如果这是你想要的工作技能,那么记住这一点。
看看XAML。我认为这对现代Windows和Web UI创作者来说可能是一个好的开始。
我来这里说这只是为了发现它已经说了。 :) – 2009-01-20 04:24:40
实际上,我发现xaml非常难以与 – 2009-01-20 04:25:52
Tcl/Tk将完全按照您的要求进行操作。 包和网格布局管理器基于小部件的逻辑相对位置。
虽然Tk的“native”语言是Tcl,但许多其他语言都具有Tk绑定。
label .l -text "this is a label"
button .b -text 'quit' -command "exit"
pack .l .b
我可能会尝试使用C#。即使不使用拖放功能,它也具有对Windows常用控件等的合理友好的界面。只是不要照常使用设计器和代码。
我不用Java编程,但我知道Java提供了编程创建的UI,并提供了一些非常棒的布局管理组件(原生Java到Java而不需要SWING)。我首先通过X工具包(任何人都记得Motif,OpenLook,HP Open View?)在X11的古老时代回到布局管理器,而Java似乎也采用了类似的技术。
您可以从简单的布局管理器创建Windows,对话框和菜单。
由于我自己看到了自己,而且没有在任何曾经被审计过的可访问性或盲目用户大量访问过的任何内容上工作太过密切,所以我不认为我的答案会非常彻底。然而,我的第一个直觉就是说,某种类似C#,PHP或ColdFusion等生成HTML的动态Web服务器体系结构将适合您处理大多数布局的描述,而无需指定以像素为单位的控件位置。当然可以通过CSS指定像素的控制位置,但这不是必需的。而且我知道HTML也具有明确的可访问性标准,但我不确定其他类型软件的可访问性标准的状态如何。
我要说的是,XAML将是一个不错的选择:
May如果你给我们一个你需要什么语言的想法,我们可以给你更好的建议。
一起工作另外还有一个好处:它提供了一个很好的环境,可以在您输入时为您提供提示(Intellisense)。 – Ria 2009-01-20 06:38:34
您可以使用javascript和html。JavaScript有一个处理端口,所以你知道它对于你的课程将覆盖的东西足够强大。您可以在不知道关于它看起来像什么的一件事情的情况下编写html。事实上,这是编写html的首选方式。
javascript的主要缺点不是JavaScript本身,而是浏览器的dom。这是控制html元素的界面。但是,像jquery,mootools或dojo这样的库可以解决大部分这些问题。
至于可访问性,看看WAI ARIA也opera's intro to WAI ARIA .A
WAI ARIA是构建丰富的JavaScript应用程序,而玩漂亮的屏幕阅读器的方式。这很酷。我没有看到更多的工作和激情投入到使任何其他编程堆栈中的Web栈可访问。
看看codeplex上的这个项目。它可以帮助你(作为替代处理& JAVA) http://bling.codeplex.com/
玲是微软的WPF/.NET编程容易图像,动画,交互和可视化一个C#基于库。 Bling面向设计技术人员,即有时进行编程的设计人员,以帮助快速建立丰富的UI设计思想。学生,艺术家,研究人员和业余爱好者也会发现Bling可以用作快速表达想法或可视化的工具。 Bling的API和构造针对快速编程丢弃代码进行了优化,而不是仔细编程生产代码。
金光闪闪的以下功能丰富的用户界面的快速原型援助:
* Declarative constraints that maintain dynamic relationships in the UI without the need for complex event handling. For example, button.Width = 100 - slider.Value causes button to shrink as the slider thumb is moved to the right, or grow as it is moved to the left. Constraints have many benefits: they allow rich custom layouts to be expressed with very little code, they are easy animate, and they support UIs with lots of dynamic behavior.
* Simplified animation with one line of code. For example, button.Left.Animate.Duration(500).To = label.Right will cause button to move to the right of label in 500 milliseconds.
* Pixel shader effects without the need to write HLSL code or boilerplate code! For example, canvas.CustomEffect = (input, uv) => new ColorBl(new Point3DBl(1,1,1) - input[uv].ScRGB, input[uv].ScA); defines and installs a pixel shader on a canvas that inverts the canvas's colors. Pixel shading in Bling takes advantage of your graphics card to create rich, pixel-level effects.
* Support for multi-pass bitmap effects such as diffuse lighting.
* An experimental UI physics engine for integrating physics into user interfaces! The physics supported by Bling is flexible, controllable, and easy to program.
* Support for 2.5D lighting.
* A rich library of geometry routines; e.g., finding where two lines intersect, the base of a triangle, the area of triangle, or a point on Bezier curve. These routines are compatible with all of Bling's features; e.g., they can be used in express constraints, pixel shaders, or physical constraints. Bling also provides a rich API for manipulating angles in both degrees and radians.
* And many smaller things; e.g., a frame-based background animation manager and slide presentation system.
* As a lightweight wrapper around WPF, Bling code is completely compatible with conventional WPF code written in C#, XAML, or other .NET languages.
Bling的是肖恩McDirmid和朋友创建了设计快速成型,以帮助一个开源项目。我们使用Bling来提高生产力,并希望与其他WPF UI设计原型分享。
伟大的问题 - 一定要更新它,让我们知道你怎么了! – Polsonby 2009-06-17 10:42:52