创建一个在标题栏中没有“关闭”按钮的 HTA

(编辑:jimmy 日期: 2025/2/25 浏览:2)

                                   问:
您好,脚本专家!如何创建一个在标题栏中没有“关闭”按钮的 HTA?
-- AK
答:
您好,AK。您知道,您的问题让我们陷入了道德和伦理的窘境。毕竟,假如我们给出此问题的答案:这个世界就有可能突然被大量无法关闭的 HTA 所淹没。在我们的眼前会出现这样一幅画面:无法关闭又不能停止的 HTA 疯狂地横扫整个陆地,并吞食沿途的所有系统资源。而我们脚本专家,将要对此负责。我们只是觉得无法在良心上背负这样一条的罪责。
但是,在我们的的良心上再多加一条罪责又会有什么不同呢?明确这一点后,我们给出了下面这个无法关闭的 HTA;关掉它的唯一方法就是终止 Mshta.exe 进程(或者让陆军航空兵从帝国大厦顶部将其击落):
<html>
<head>
    <title>Test</title>
</head>
<HTA:APPLICATION 
    SysMenu="no"
>
<body>
    <p>This HTA has no Close button.</p>
</body>
</html>
当您运行它的时候,看到的结果应该同下图相似:
创建一个在标题栏中没有“关闭”按钮的 HTA
那么我们是如何去掉“关闭”按钮(更不用说“最大化”和“最小化”按钮了)而仍然保留窗口标题栏的呢?很简单:只需将 SysMenu 属性值设置为 no 即可:
<HTA:APPLICATION 
    SysMenu="no"
>
就是这样:将 SysMenu 的值设置为 no(这必须在 HTA:APPLICATION 标记内部完成)将去掉“关闭”按钮、“最大化”和“最小化”按钮以及系统菜单。仍然可以四下移动窗口(单击标题栏并拖动即可),但是没有办法关闭窗口。
是的,我们的良心此刻有些不安。(尽管这很可能是因为我们喝完了最后一杯咖啡但由于太懒而不愿重沏一壶。)下面是一个经过修订的在标题栏中没有“关闭”按钮的 HTA;不过,在它的主体之中却的确有一个标有 Exit 的按钮。单击此按钮,一个名为 ExitProgram 的子例程将关闭 HTA 窗口:
<html>
<head>
    <title>Test</title>
</head>
<HTA:APPLICATION 
    SysMenu="no"
>
<SCRIPT LANGUAGE="VBScript">
    Sub ExitProgram
        window.close()
    End Sub
</SCRIPT>
<body>
    <input id=runbutton type="button" value="Exit" onClick="ExitProgram">
</body>
</html>
在这种情况下,我们会得到一个类似下图的 HTA:
创建一个在标题栏中没有“关闭”按钮的 HTA
出于全方面考虑,可能最好还是找到某种办法以将 HTA 正常地关闭。但这将由您来决定。还有您的良心
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?