我是一名盲人大学生,正在参加专注于用户界面设计的编程入门课程。该类正在使用Processing,这是完全无法访问的。我正在寻找一种语言,它允许我无需拖放即可创建 GUI,并希望足够智能来完成大部分布局,而无需强迫我以像素为单位指定控制位置。

我了解 Perl、Java、C/C++、c# 和 HTML。我正在考虑创建 HTA 应用程序。我唯一的要求是该语言必须在 MS Windows 下运行,并且不能使用 SWING 或 GTK 作为底层工具包。

有帮助吗?

解决方案

作为一个盲目的程序员:

  • C#+它:你可以创建代码通过手工和管理人员使用的布局或尺寸计算在你的头上,或如果您使用的爪屏幕阅读器,然后还有脚本,这将有助于在它的设计师。
  • C#+WPF:在这里,你定义UI在XML,但它是更复杂得到你的头左右。肯定会看看这个,因为它是一个非常好的解决方案。其他问题WPF在的时刻是,并非所有屏幕阅读器支持这种较新的技术。
  • 贾马尔*马兹鲁伊在www.EmpowermentZone.com 已经创建了一些所谓的"布局通过代码",但是我没有经验。
  • HTML+Javascript将是不错的,但我怀疑它会被允许在你的课程。
  • 个函数库和二进制文:我没有很多的经验,这种交叉平台,多语言UI工具包,但我相信它已经布置管理人员,因此用几个盲程序员,我知道。
  • 最后,我用来设计Win32资源脚本方面,尺寸计算在我头(不局管理人员).这当然是可以实现的,如果你想采取这一路线。

在摘要,WPF很好,但要确保你的屏幕阅读器的工作原理与此种应用程序。下一个最好的选择可能是它.如果你喜欢的布局通过代码然后使用它,但如果这是你想要的技能就业,那么保持住这一点。

其他提示

我要说的是,xaml将是一个好的选择:

  • 像素的操纵是不需要
  • 项目的功能在码后面
  • 可以添加的象素更改的控制 稍后
  • 有很多的文件 如何使用它

也许如果你给我们什么想法你会需要的语言为我们可以给你更好的建议。

采取XAML看看。我认为这可能是一个良好的开端,既现代的Windows和Web UI的创造者。

的Tcl / Tk将不正是你想要的。在和<强>格布局管理器是基于小窗口的逻辑相对放置。

虽然传统知识的“天然”语言是TCL,许多其他的语言有一个Tk的结合。

label .l -text "this is a label"
button .b -text 'quit' -command "exit"
pack .l .b

查看CodePlex上这个项目。它可以帮助你(作为替代处理和JAVA) http://bling.codeplex.com/

灵是基础的库,用于Microsoft的WPF / .NET编程容易图像,动画,交互和可视化一个C#。金光闪闪朝向设计技术人员,即设计师谁有时程序,以丰富的UI设计理念的快速原型帮助导向。学生,艺术家,研究者和爱好者还可以找到快速表达思想或可视化金光闪闪作为一种工具是有用的。金光闪闪的API和构建针对扔掉的代码,而不是生产代码精心编程的快速编程优化。

瑞气如下面的特征。在富UI的快速原型援助:

* 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.

金光闪闪是由肖恩McDirmid和朋友创建一个开源项目在设计快速原型中提供帮助。我们用金光闪闪,以提高我们的生产力,并想与其他WPF UI设计prototypers分享。

我可能会尝试使用C#。它具有相当友好的界面到Windows通用控件等,即使没有利用拖放的。只是不要利用设计和代码为正常的。

我不计划在Java中,但我知道,Java提供对于程序创建用户界面,并提供了一些精彩的布局管理组件(本地到Java,而不需要SWING)。我第一次接触到布局管理器早在X11与X工具包(任何人记得主题,OPENLOOK,HP打开视图?)和Java的好老日子似乎也采用了类似的技术。

您可以从所有简单的布局管理器创建窗口,对话框和菜单。

被看见了自己,没有对曾经进行过审计的无障碍或严重盲人用户访问,我不认为我的回答将是非常彻底的什么太密切合作。但我的第一反应是说,某种动态的Web服务器架构的,像C#,PHP或ColdFusion生成HTML是要适合你的处理大部分的布局为你的描述,而无需您指定以像素为单位控制仓位。当然是有指定的通过CSS像素控制仓位的可用性,但它不是必需的。我知道HTML也有良好的无障碍定义的标准,而我不知道的状况为无障碍标准与其它类型的软件是什么。

你可以使用 javascript 和 html。有一个 JavaScript 处理端口,因此您知道它对于您的课程将涵盖的内容来说足够强大。您可以在不了解 html 外观的情况下编写 html。事实上,这是编写 html 的首选方式。

javascript 的主要缺点不是 javascript 本身,而是浏览器 dom。这是控制 html 元素的接口。然而,像 jquery、mootools 或 dojo 这样的库可以解决大部分问题。

至于可访问性,请看一下 怀阿丽亚歌剧《WAI ARIA》简介。A

WAI ARIA 是一种构建丰富的 JavaScript 应用程序,同时与屏幕阅读器良好配合的方法。非常酷。我还没有看到更多的工作和热情投入到使 Web 堆栈可在任何其他编程堆栈中访问。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top