关闭[X]与最小化[_]


2

三个问题:

  1. 更改关闭[X]按钮行为(退出应用程序)以最小化应用程序作为任务栏上的图标的背后原理是什么?
  2. 为什么更改关闭而不是最小化按钮?
  3. 是否有可能以编程方式确保关闭按钮[X]始终终止应用程序?

我注意到(非软件开发人员的)机器陷入困境,因为它们正在运行许多应用程序。因为我知道应用程序占用了内存,所以我使用File»Exit或右键单击该图标,然后选择Exit。两者都比按[X]退出要慢。

不是每个人都知道RAM和磁盘空间之间的差异,即使他们知道,也不是每个人都有8GB的RAM可用。

更新

如上所述,这些问题有点含糊。我想知道为什么其他程序员认为更改关闭按钮的默认行为是合理的(这会导致应用程序之间出现巨大的不一致)?大多数使用计算机的人无法分辨以下两者之间的区别:

  • Google与网络浏览器
  • RAM与硬盘
  • CPU vs所有情况
  • 电子邮件和Hotmail
  • 加载的程序与未启动的程序

声明窗口和应用程序之间存在差异,尽管从技术上讲是正确的,但面对15年以上的祖母知道[X]表示“退出应用程序”,这实在是天壤之别。特别是当最小化按钮[_]也可以执行相同的任务时,并不意味着“退出应用程序”。

Answers:


4

最小化的目的是在不实际退出应用程序的情况下打开窗口,以便它可以在后台继续执行某种形式的工作(或等待某个事件),或者可以重新打开窗口快速打开窗口,而不会丢失任何状态。

根据定义,关闭按钮将关闭窗口。在某些情况下,应用程序只有一个窗口,因此它关闭窗口时选择退出。

使用虚拟内存,实际上不执行任何处理的最小化应用程序将被调出到磁盘,并且对系统性能的影响很小。真正影响系统性能的是诸如病毒检查程序之类的应用程序,这些应用程序始终在后台执行大量工作。

如果要在PC上提高性能,则不要一开始就运行太多的应用程序,也不要适当地升级RAM,处理器和硬盘驱动器(等)。

钩住Windows消息并将对任何关闭图标的单击转换为WM_QUIT消息将非常容易。


3

程序员决定该应用程序应继续运行。关闭按钮关闭窗口,而不是关闭程序,Windows用户经常将其混淆。在许多其他操作系统上,该窗口可以独立于程序关闭。

如果您不喜欢软件的行为,请购买其他软件。卸载按钮保留在“开始”->“控制面板”->“添加/删除程序” ..或Vista,WindowsBall->“控制面板”->“程序和功能”下。


2
同样,普通用户也不知道正在运行的应用程序与其主窗口之间的区别。这些都是一群人,他们不知道Google和网络浏览器之间的区别。
戴夫·贾维斯

这是完全正确的..该窗口不是(不一定)该应用程序。即使关闭了所有窗口,许多应用程序也应保持运行状态。考虑一下IM应用程序,以及在关闭对话窗口时是否应该关闭它。

回覆。WindowsBall,我相信它被称为“ orb”
罗布

准确地说是“开始球”。但是任何人仍然会理解“开始按钮”。此外,仅需在开始菜单中键入“功能”就足以获取“程序和功能”对话框,而无需通过控制面板。
乔伊,

0

基本原理(我认为)是您希望应用程序仍在运行,而不是使任务栏“混乱”。

您是对的,一种更好的方法是更改​​最小化的行为(可能通过应用程序中的某些选项),以将应用程序最小化到系统任务栏而不是任务栏(我以前已经这样做过)。


0

有时,应用程序开发人员选择以这种方式修改[X]关闭按钮的默认行为,因为用户下次需要该应用程序的窗口时,不必等待应用程序启动。诸如Adobe,Quicktime,Firefox之类的东西就是臭名昭著的。


0
  1. 我知道已经对许多应用程序执行了此操作,以“减少”应用程序的启动时间。授予它只有在您运行一次但仍然运行之后才有帮助,重新启动它似乎更快(因为它只是在显示自己)。

  2. 在其他情况下,这样做是因为该应用程序用于一些耗时的应用程序,并且X进行了更改,因此人们在打算最小化该应用程序时不会意外关闭该应用程序。

  3. 当然可以。对于程序,您有其来源。如果您没有源,那么您只需要记住要尽力将其真正关闭即可。


0

我看到的大多数使用此功能的应用程序都是具有两种状态的应用程序。一种状态是用户实际与应用程序的用户界面进行交互时,另一种状态是应用程序只是“坐在那里”执行其职责时。开发人员在开发同时需要这两个状态的应用程序时,可能会选择重写典型的“ x =关机程序”思维模型,以减少状态切换的麻烦。

Foobar就是一个例子,它允许[X]最小化到通知区域。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.