Progress / SplashImage

プログレスバーやスプラッシュイメージのウィンドウを表示・更新する

Progress, Off
Progress, Sow
Progress, ProgressParam1 [, SubText, MainText, WinTitle, FontName, FutureUse]

SplashImage, Off
SplashImage, Show
SplashImage [, ImageFile, Options, SubText, MainText, WinTitle, FontName, FutureUse]

Parameters

引数名説明
ImageFile 画像ファイル名。
対応形式はBMP/GIF/JPEG。
相対パスで指定した場合、%A_WorkingDir%以下から検索される。
ImageFileとOptionsが省略された場合、画像は更新されない。
ウィンドウを最初に表示するとき、画像の読み込みに失敗すると、画像なしで表示される。
ProgressParam1 後述のオプション文字列か、プログレスバーの進行度(0...100)を指定する。
Options 後述のオプション文字列を指定する
SubText バーや画像の下に表示されるテキストを指定。
既存のウィンドウのテキストを消去するには「%A_Space%」を指定する。
MainText バーや画像の上に表示されるテキストを指定。
省略時は、テキスト表示領域は確保されない。
SubTextやMainTextの行数が変わっても、ウィンドウが再生成されない限りウィンドウの高さは変わらない。
WinTitle ウィンドウのタイトルを設定。
デフォルトはスクリプト名。
オプションに「B」が含まれる場合、タイトルバーは表示されないが、WinMoveコマンドなどでウィンドウを検索するときにはここで指定したタイトルが使用できる。
FontName MainTextとSubTextで使用するフォントを指定。
省略時や、指定したフォントが見つからない場合は、システムのデフォルトGUIフォントが使用される。
FutureUse 将来の拡張のために確保されている。

オプション

Param1やOptionsには、以下のオプションを列挙する。
半角スペースで区切っても、全てつなげて書いてもよい。

ウィンドウ設定

A
ウィンドウを最前面表示にしない
B
ウィンドウの枠とタイトルバーを表示しない
B1
ウィンドウのタイトルバーを表示しない
B2
ウィンドウの枠をダイアログ形式にする
M
ウィンドウを移動可能にする。
Pn
nに初期値を指定。
Rl-r
左端の値と右端の値を指定。
たとえば、「R0-1000」とすれば、0から1000の範囲になる。
「R-50-50」や「R50--50」のように、lやrに負の値を指定することもできる。
M1
ウィンドウを移動可能かつりサイズ可能にする
M2
移動・リサイズのほか、最小化・最大化・閉じるも可能にする
T
タスクバーにボタンを表示
Hn
nにウィンドウの枠の中の領域の高さを指定。
指定しない場合、テキストの行数などから自動的に計算される。
Wn
nにウィンドウの幅を指定する。
指定しない場合、SplashImageは画像の幅を元に計算される。Progressの場合、300になる。
Xn
nにウィンドウの横座標を指定
Yn
nにウィンドウの縦座標を指定
Hide
作成時にウィンドウを非表示にする。
Progress,Show」で表示させられる。

オブジェクト配置

Cxy
テキストを中央揃えにするか。
xにSubTextの設定、yにMainTextの設定を指定。
「0」で左揃え、「1」で中央揃え。
ZHn
nに画像やバーの高さを指定。
画像の場合、デフォルトは画像の実際の高さ。
バーの高さのデフォルトは20。
「-1」を指定すると、画像の縦横比を維持するように自動調節される。
ZWn
nに画像の幅を指定。
省略時は画像の実際の幅。
「-1」を指定すると、画像の縦横比を維持するように自動調節される。
ZXn
nに横のマージンの幅を指定。
バーのデフォルトは10、画像のデフォルトは0。
ZYn
nに縦のマージンの幅を指定。
バーのデフォルトは5、画像のデフォルトは0。

フォント設定

FMn
nにMainTextのフォントサイズを指定。
FSn
nにSubTextのフォントサイズを指定。
WMn
nにMainTextのフォントの太さを指定。
1...1000の間。
デフォルトは600。
WSn
nにSubTextのフォントの太さを指定。
1...1000の間。
デフォルトは400。 700にすると「Bold」になる。

色設定

nには色名か、HTMLで使われるようなRRGGBB形式の16進数を指定する。
省略時はシステムのデフォルトカラー。

これらのオプション指定する場合、オプションは半角スペースで区切って列挙すること

CBn
バーの色
CTn
テキストの色
CWn
ウィンドウの背景色。WinSet TransColorで背景を透過させることができる。

Remarks

第一引数に「OFF」を指定すると、ウィンドウは破棄される。

Hideオプション月で作成されたウィンドウは、第1引数に「Show」を指定することで表示させることができる。

スクリプトは最大10個のプログレスウィンドウと10個のスプラッシュウィンドウを表示できる。
第一引数の前に「:」で区切ってウィンドウ番号(1...10)を指定すると、指定したウィンドウに対して操作を行える。
ウィンドウ番号が指定されなかったときは、1になる。

デスクトップよりも大きなウィンドウは、自動的にデスクトップのサイズに収められる。

このコマンドでウィンドウが表示されても、スクリプトは停止せずそのまま次の処理が実行される。
WinSetWinMoveコマンドでウィンドウの状態を変更できる。

Guiコマンドを使用すれば、より柔軟なプログレスバー表示が可能。

Gui,+OwnDialogsを使用することで、GUIウィンドウの子ウィンドウとしてスプラッシュウィンドウを表示できる。
親となるGUIウィンドウが破棄されると、子ウィンドウも破棄される。

Related

SplashTextOn, ToolTip

Example(s)

Progress, b w200, My SubText, My MainText, My Title
Progress, 50 ; Set the position of the bar to 50%.
Sleep, 4000 
Progress, Off

; Create a window just to display some 18-point Courier text:
Progress, m2 b fs18 zh0, This is the Text.`nThis is a 2nd line., , , Courier New

; Create a simple SplashImage window:
SplashImage, C:\My Pictures\Company Logo.gif

; Create a borderless SplashImage window with some large text beneath the image:
SplashImage, C:\My Pictures\Company Logo.gif, b fs18, This is our company logo. 
Sleep, 4000
SplashImage, Off

; Here is a working example that demonstrates how a Progress window can be
; overlayed on a SplashImage to make a professional looking Installer screen:
IfExist, C:\WINDOWS\system32\ntimage.gif, SplashImage, C:\WINDOWS\system32\ntimage.gif, A,,, Installation
Loop, %windir%\system32\*.*
{
	Progress, %a_index%, %a_loopfilename%, Installing..., Draft Installtion
	Sleep, 50
	IfEqual, a_index, 100, break
}