- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题需要更多focused .它目前不接受答案。
想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post .
2年前关闭。
Improve this question
现在我们有像 1920x1200 和 1680x1050 这样流行的屏幕,有些甚至使用 2560x1600 的分辨率,而一些较旧的系统仍然依赖 800x600 的分辨率。我正在编写一个在 1680x1050 上看起来不错的软件,但在 1920x1200 上太小而在 1024x768 上太大了。您对如何设计适用于各种屏幕尺寸的应用程序有什么建议吗?
以前我们在分辨率上几乎没有差异时,事情要简单得多,但现在似乎没有好的方法来处理这个问题。
我知道这个问题更多是关于设计/布局而不是编程,但我打赌这或多或少是程序员生活的一部分,所以我在这里发了这篇文章。
最佳答案
应用程序应自动适应各种窗口尺寸和屏幕尺寸。你不应该假设用户总是希望以全屏尺寸运行你的应用程序。即使您的所有用户都有庞大的屏幕,在某些情况下,他们也可能希望并排显示多个窗口。
当数据以列表/表格或图形格式(后者包括 map 、图表和大多数 WYSIWYG 应用程序)布局时,为多个窗口大小设计(如果不是开发)非常容易。显示表格或图形的 Pane 应随着窗口大小的调整而调整大小。通常,您可以根据需要包含水平和垂直滚动条,以允许用户在当前任何 Pane 大小内平移数据。使用窗口大小调整 Pane 大小通常意味着所有数据都可以通过滚动条访问。将数据拆分成页面效果不佳(例如,像 Google 搜索结果的拆分方式一样)。
对表格进行水平滚动是完全可以接受的(与散文主导的网页不同),只要用户水平滚动时标识行的第一列仍然可见。同样,当用户垂直滚动时,列标题应保持可见。对于图形,更改窗口大小一般不应更改缩放级别。相反,缩小时显示更多数据,放大时显示更少数据,同时提供单独的缩放功能。
对于布局为表单的数据,在 Pane 中包含单个记录的字段和标签,确实没有处理多个窗口大小的好方法,您必须选择要设计的窗口大小。为了可用性,您应该设计为在标准文本大小下,当窗口大小设置为您可能遇到的最低屏幕分辨率时,所有字段都可见而无需滚动。使用选项卡或其他类似控件来适应该空间中的所有必填字段。通常,这意味着设计尺寸为 1024x768,假设您的用户可能在笔记本电脑上使用您的应用程序。表单布局需要在较小的分辨率下进行一些垂直滚动(这在 Web 应用程序中很常见)可能是可以接受的,但对于典型情况,用户永远不必水平滚动。因此,在您的情况下,如果您的大多数用户使用台式机并且只是偶尔使用笔记本电脑,您可能希望设计为 1024x1050。在继续之前,测试用户是否意识到在使用低分辨率时必须滚动。如果您希望用户在查看其他窗口时定期使用该窗口(例如,它更像是一个属性对话框),则可能会对窗口大小设置额外的限制。
对于表单布局,当调整窗口大小时,文本的大小或字段之间的空间不应改变(尽管允许用户明确增加文本大小是个好主意)。调整大于设计尺寸应该简单地在右侧和底部添加空白边距。换句话说,为表单布局调整更大的尺寸确实没有多大意义。没关系。至少您的一些用户会很好地将未使用的屏幕空间用于其他用途(例如,另一个窗口或应用程序)。拥有大屏幕的真正高级用户可能会并排打开同一窗口的两个实例,并让每个实例显示不同的选项卡,以便他们可以同时进行尽可能多的监控。
调整小于表单布局的设计尺寸应该会导致滚动条出现并提供对不再可见的字段的访问。如果您选择了可能遇到的最低屏幕分辨率,则后一种情况应该是一种边缘情况。
关于interface - 为各种屏幕尺寸设计软件界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2938153/
我是一家小型非营利组织的技术总监,我们正在制作一个新网站。我们提出了几个不同主页设计的模型,需要接收董事会成员的意见。是否有在线应用程序/程序/框架可以接收和组织用户评论?我正在寻找允许在查看页面时发
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 4年前关闭。 Improve thi
我阅读了很多关于 java 接口(interface)的文章。我知道你可以实现多态性和其他伟大的东西(函数指针等)。我有理论知识,但有一点点或什至没有。我一直在使用很多已经制作好的界面,比如“Runn
已关闭。此问题旨在寻求有关书籍、工具、软件库等的建议。不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以
我正在尝试在 Windows 7 上编写一个 python 脚本来与我的 Wacom Bamboo Pen 数位板交互。 Wacom 建议使用 WinTab API,它工作正常,但不适用于我的应用程序
我正在研究一种远程访问有关 Linux 服务器统计信息的方法,即 conky会显示。 有没有办法与 conky 交互并获取它显示的统计信息?如果没有,您能否推荐一种获取此类统计数据的好方法? (C/C
将所有这些代码包装在 UI: do { } block 中的原因是什么?我在哪里可以获得关于它的明确说明? UI: do { backgroundButton.setImage(UIImage
我需要将 R 连接到某些 C# 应用程序。我安装了 rscproxy_1.3 和 R_Scilab_DCOM3.0-1B5 添加了对 STATCONNECTORCLNTLib、StatConnecto
我正在尝试遍历接口(interface)片段以通过 id 查找我的特定结构并更改属性。 type A struct { ID ID Steps []Step } type Ste
我有两种不同格式的相同界面,一种是键由低破折号分隔的 JSON 格式,另一种是 javascript camelCase 格式: JSON 格式: interface MyJsonInterface
操作系统:Linux。 我正在尝试寻找可能的方法来为我的嵌入式系统实现 Web 界面。 目前有一个外壳(基于文本)和一小组命令用于查询设备。 我是网络开发新手,我的问题是: 我必须使用什么网络服务器?
我正在尝试运行基于 Mechanical Turk Qualtrics 的调查,并且需要一些似乎可以通过 Mechanical Turk API 使用的功能,例如 custom Qualificati
我见过漂亮的 MetroTwit 界面 http://www.metrotwit.com/ ;我想知道使用了哪些 WPF 组件来尝试重现它。 最佳答案 MetroTwit 设计师在这里:) 所有的控件
我有一个小问题。我需要将 Hadoop Web 界面与我们的 Web 应用程序集成。我只需要一个 Hadoop 接口(interface),我们可以在其中运行一些 hadoop 命令,例如 1
假设我有这个 JavaScript 函数: function updateMainBuff(buff) { // do some stuff } 我的
我试图找出一个窗口是否属于当前的虚拟桌面。 我从 winapi 中找到了 VirtualDesktopManager 类,但即使根据 here 它应该位于“shobjidl.h” header 中,当
关闭。这个问题是opinion-based .它目前不接受答案。 想改进这个问题?更新问题,以便 editing this post 提供事实和引用来回答它. 8年前关闭。 Improve this
我的 Tkinter GUI 界面有问题。文本不会在 shell 中打印,但如果将 Entry 放置在第一个 tk 窗口 get() 中,它就可以工作...帮助我吗? 这是我的代码: import o
我有一个在 MATLAB 中实现的随机微分方程组。只有 4 个变量与 Euler-Maruyama 集成,所以没有什么太花哨的......不过,技术细节对于这个问题并不重要。 您建议我如何构建一个 W
对于我创建的插件,我想添加一个网络界面,您可以从中更改设置并执行一些简单的数据操作。此数据操作应通过 sqlquerys 完成。我正在使用 sqlite 数据库,这就是问题开始的地方: 网站(serv
我是一名优秀的程序员,十分优秀!