重新加载 HTA 一次

Reload HTA just once

我已经为一些要完成的任务编写了一个 HTA。我在其中使用了 CSS 。问题是页面有点变形(布局不正确,按钮错位),需要 refresh/reload 才能以正确的格式显示。因此,我想要一个解决方法,让 HTA 在打开后仅重新加载一次。

我尝试在 Window_onLoad 中编写各种代码来重新加载 window,但它会导致 window 无限重新加载(因为每次重新加载后 Window_onLoad 都会被触发) .因此需要一些可以自动重新加载一次的东西,一旦 window 被加载,因为我不想让用户等待以正确查看应用程序。

下面是代码:

body
{
  
 margin:          0;
 padding:         0;
 background-color: #000;
 font-family:     'lucida grande', arial, tahoma, sans-serif;
}

#container
{
 margin:          0 auto;
 padding-top:0;
 width:           100%;
 position:        static;
 background-color:  #222;
}

#header
{
 margin:          0 auto;
 width:           100%;
 height:          800px;
 background:      transparent url('p1.jpg');
 background-size: 50% 50%; 
 
}

.headtitle
{
 position:        relative;
 font-family:     Times;
 font-size:       40px;
 color:           #FFF;
 top:             20px;
 left:            18px;
}

 

form {
  padding:  20px 0;
  position: relative;
  top:      80px;
  margin: 0 auto 10px 300px; 
}

form input {
outline: 0;
  border: 0px 
  background-color: rgba(255, 255, 255, 0.2);
  width: 200px;
  border-radius: 15px;
  padding: 1px 15px;
  margin: 0 auto 10px auto;
  display: block;
  text-align: center;
  font-size: 18px;
  color: black;
  -webkit-transition-duration: 0.25s;
          transition-duration: 0.25s;
 behavior: url(PIE.htc);
  font-size: 90%;
  
  }
  
  form input:hover {
  background-color: rgba(255, 255, 255, 0.4);
}
form input:focus {
  background-color: white;
  width: 300px;
  color: #53e3a6;
}
  
 
<html>
<head>
 <HTA:APPLICATION
   APPLICATIONNAME="Simple HTA"
   BORDER="NONE"
   MaximizeButton="no"
   Scroll="NO"
   SYSMENU="YES">
   
 <title>PrOtOtYpE</title>
 <link rel="stylesheet" type="text/css" href="style.css" />
 <script language="VBScript">

 SUB RunFile 
  SET WshShell = CreateObject("WScript.Shell")
  WshShell.Run "Z:/SSH/SshClient.exe"
 End SUB
 
 SUB CloseWindow
  self.close
 End SUB

 
 SUB Window_onLoad
        window.resizeTo 800,700
 End SUB 

 </script>
  
</head>
 
<body>
 <div id="container"> 

  <div id="header">
    <div class="headtitle">PrOtOtYpE</div>
    
 <form class="form" name="form">
   <input type="button" name="button" value="App Web Server 505" onclick="RunFile"/> 
   <input type="button" name="but" value="App Web Server 506" onclick="RunFile"/> 
   <input type="button" name="but" value="DB Server 178" onclick="RunFile"/> 
   <input type="button" name="but" value="DB  Server 177" onclick="RunFile"/> 
   <input type="button" name="but" value="Close" onclick="CloseWindow"/> 
 </form>
   
</div>
</div>
 </body>
 </html>
 
 

onload中设置一个标志。

'Making a public variable
Dim FirstRunFlag

SUB Window_onLoad
        window.resizeTo 800,700
        If FirstRunFlag=0 then 
                window.refresh
                FirstRunFlag=1
       End If
End SUB 

或者将其作为样式表之前头部中的第一个脚本 运行。

<html>
<head>
<script language=vbscript>

    window.resizeTo 800,700
</script>
<style>
etc etcetc
</style>
</head>
<body>ra, ra, ra.</body>
</html>