Почему этот файл hta мигает большим квадратом перед отображением изображения? - PullRequest
0 голосов
/ 10 апреля 2019

У меня следующий код отображает изображение с именем Test1.png

Хотя само изображение отображается правильно, при первом открытии большой белый квадрат мигает в течение секунды, прежде чем изображение открывается.

Как мне избавиться от этой фигуры, которая мигает на секунду.

Код:

<html>
    <HTA:APPLICATION ID = "oHTA"
        BORDER          = "none"
        BORDERSTYLE     = "normal"
        CAPTION         = "no"
        CONTEXTMENU     = "no"
        SYSMENU         = "no"
        NAVIGABLE       = "no"
        INNERBORDER     = "no"
        SCROLL          = "no"
        SELECTION       = "no"
        SINGLEINSTANCE  = "yes"
        WINDOWSTATE     = "normal"
        SHOWINTASKBAR   = "no"
    />
<head>
  <meta http-equiv="x-ua-compatible" content="ie=9">

  <style type="text/css">
    body {
        background-color: red; 
        border-color:     red; 
        margin-top:      -1px;
        margin-left:     -1px;
        margin-bottom:   -1px;
        margin-right:    -1px;
    }
  </style>

  <script language="VBScript">
      Option Explicit
      Dim width, height
      width  = 478 -1                 '''  
      height =  50 -1                 ''' 
      Sub window_onload()
          CenterWindow width, height
      End Sub
      Sub CenterWindow( widthX, heightY )
          self.ResizeTo widthX, heightY 
          self.MoveTo (screen.availWidth - widthX)/2, (screen.availHeight - heightY)/2
      End Sub
  </script>
</head>

<body>
  <img src="Test1.png"/>
</body>
</html>

1 Ответ

2 голосов
/ 11 апреля 2019

Если вы заранее знаете размер и место окна HTA, возьмите изменение размера и положения из window.onload, сделайте их первым действием в сценарии и переместите тег <hta> после изменения положения или изменения размера в пределах голова. Это работает, поскольку окно невидимо до тех пор, пока не будет выполнен весь код, размещенный до <hta>.

<html>
    <head>
        <meta http-equiv="x-ua-compatible" content="ie=9">
        <style type="text/css">
            body {
                background-color: red; 
                border-color:     red; 
                margin-top:      -1px;
                margin-left:     -1px;
                margin-bottom:   -1px;
                margin-right:    -1px;
           }
       </style>    
       <script language="VBScript">
           Option Explicit
           Dim width, height
           width  = 478 -1                 '''  
           height =  50 -1                 ''' 
           self.ResizeTo width, height 
           self.MoveTo (screen.availWidth - width)/2, (screen.availHeight - height)/2
      </script>
      <HTA:APPLICATION ID = "oHTA"
          BORDER          = "none"
          BORDERSTYLE     = "normal"
          CAPTION         = "no"
          CONTEXTMENU     = "no"
          SYSMENU         = "no"
          NAVIGABLE       = "no"
          INNERBORDER     = "no"
          SCROLL          = "no"
          SELECTION       = "no"
          SINGLEINSTANCE  = "yes"
          WINDOWSTATE     = "normal"
          SHOWINTASKBAR   = "no"
     />
</head>
...