1
2
“非模态表单应始终在关闭的大小和位置重新打开。” 它们第一次打开时必须具有默认位置和大小。你有 有什么规定吗? 我将添加限定符:如果屏幕分辨率/监视器计数为 与上次打开此窗体不同,它将恢复为默认值 位置。所以没有不可访问的表单恢复到400像素左右 屏幕区域。 “应在主监视器的中心打开警告或错误对话框。” 我不明白你为什么把消息框从“应用程序所在的监视器”移到 驻留在主监视器上(此后为MWTAR)。你知道赌徒是 看看MWTAR;毕竟他做了些“坏事”。你为什么 换显示器现在你有重要的事情要说吗? (毕竟,如果是包含有用诊断的错误对话框,他不会 无论如何都要读。我不认为有必要对他隐瞒。) 再想想。错误模式对话框的一个问题是,无论它们出现在哪里,用户在键入其他内容时可能会意外地按“回车”键并将其取消。我知道我经常这样做。 我看到的克服这个问题的一个技巧是在对话框第一次显示时禁用OK按钮。对话框中有一个3秒的计时器,它会倒计时,并将剩余时间显示在附加到按钮的小标签中。所以赌徒知道他很快就能把事情处理掉。 显然,这必须非常、非常谨慎地使用,而且只能用于最稀有和最重要的对话。但我觉得这很聪明。也许需要做的只是在3秒钟后将ok设为默认按钮。 |
2
2
对话应该 从未 在显示器中央打开。考虑一下其中一个分辨率为2560x 1600像素的30英寸显示器-使用这些显示器中的一个最大化的应用程序只在非常特殊的情况下才有意义。如果应用程序窗体位于该大屏幕区域的某个角落,则用户需要将鼠标光标从其当前位置移到屏幕中心,然后在取消对话框后移回。而且,在正常的视距下,可能不可能同时看到所有的屏幕,所以活动窗口的中心将比屏幕中心更“在用户的视线前面”。任何不记得其位置的对话框都应该以其父窗口为中心打开。对于大于其父窗口的对话框(在该窗口中保留一点父窗口可见是有意义的,这会让用户更清楚发生了什么)和应该出现在其应用对象附近的属性页,应该进行例外处理。 我也会考虑将屏幕位置保存为屏幕面积的百分比,而不是像素。这样,使用带有或不带有大的外部屏幕的笔记本电脑时,总是能最大限度地利用屏幕区域——使用绝对坐标时,屏幕的一部分将被闲置,或者窗口移到可见区域之外。 |
3
1
根据平台的不同,当应用程序在发出警报时没有焦点时,应避免焦点。对于键入内容的用户来说,很容易在没有阅读机会的情况下解除警报。 例如,在Windows上,可以使用闪烁任务栏按钮的功能。 |
user2161312 · 打开对话框时检测后退按钮事件 6 年前 |
Marc Jonkers · P、 使用可变消息通知like消息 6 年前 |
NESHOM · 使用控制台应用程序的QDialog没有任务栏条目 6 年前 |
NESHOM · 根据Qt中的显示/屏幕大小定位动态QDialog 6 年前 |
ArclightOne · 是否从适配器中更改对话框图像? 6 年前 |
hedgar2017 · Q对话框窗口模态 6 年前 |