移動先: 概要 戻り値 フラグ Python の例
progressWindow([endProgress=boolean], [isCancelled=boolean], [isInterruptable=boolean], [maxValue=int], [minValue=int], [progress=int], [status=string], [step=int], [title=string])
注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
progressWindow は「元に戻す」が可能、「照会」が可能、「編集」が可能です。
progressWindow コマンドは、ステータス メッセージ、グラフィックのプログレス ゲージ、オプションで操作を中断する場合の「キャンセルするには Esc キーを押してください」というメッセージを含むウィンドウを作成します。一度に表示できるプログレス ウィンドウは、1 つだけです。ウィンドウが可視の間は、ビジー カーソルが表示されます。
boolean | ウィンドウの作成に成功した場合 true を返し、ウィンドウが作成できなかった場合(考えられる理由として、すでに 1 つ表示されていた場合など)false を返します。 |
戻り値の型は照会モードでは照会フラグが基になります。
endProgress, isCancelled, isInterruptable, maxValue, minValue, progress, status, step, title
ロング ネーム(ショート ネーム) |
引数型 |
プロパティ |
isCancelled(ic)
|
boolean
|
|
|
操作を解除しようとした場合、true を返します。
その他の場合、false を返します。
|
|
progress(pr)
|
int
|
|
|
コントロールに現在表示される進捗状況です。
値は常に最小値と最大値の間になり、デフォルト値はコントロールが作成された時点の最小値です。
|
|
step(s)
|
int
|
|
|
指定した量の単位で -pr/progress の値を増分します。
|
|
minValue(min)
|
int
|
|
|
プログレス インジケータの最小値または「開始」値です。
プログレス値が -min/minValue より小さい場合、プログレス値は最小に設定されます。
デフォルト値は 0 で、
|
|
maxValue(max)
|
int
|
|
|
プログレス インジケータの最大値または「終了」値です。
プログレス値が -max/maxValue より大きい場合、プログレス値は最大に設定されます。
デフォルト値は 100 です。
|
|
title(t)
|
string
|
|
|
status(st)
|
string
|
|
|
プログレス ゲージの上に表示される、状況に関するテキストです。
|
|
isInterruptable(ii)
|
boolean
|
|
|
操作をキャンセルしようとすると、プログレス ウィンドウが反応する場合には、true を返します。true に設定すると、キャンセル ボタンが無効になります。
|
|
endProgress(ep)
|
boolean
|
|
|
プログレス ウィンドウを終了します。他のフラグは併用できません。これは通常、-ic/isCancelled フラグが設定された場合、もしくはプログレス値が最大値になった場合に、MEL を通じて発行されます。
|
|
: コマンドの作成モードで使用可能なフラグ
|
: コマンドの編集モードで使用可能なフラグ
|
: コマンドの照会モードで使用可能なフラグ
|
: タプルまたはリストとして渡された複数の引数を持てるフラグ
|
import maya.cmds as cmds
# +-+------------------+
# |-| Doing Nothing |
# +--------------------+
# | Sleeping: 40% |
# | |
# | +----------------+ |
# | ||||||| | |
# | +----------------+ |
# | |
# | Hit ESC to Cancel |
# +--------------------+
# Always use the progress dialog from a script, never directly
# from the Script Editor.
amount = 0
cmds.progressWindow( title='Doing Nothing',
progress=amount,
status='Sleeping: 0%',
isInterruptable=True )
while True :
# Check if the dialog has been cancelled
if cmds.progressWindow( query=True, isCancelled=True ) :
break
# Check if end condition has been reached
if cmds.progressWindow( query=True, progress=True ) >= 100 :
break
amount += 5
cmds.progressWindow( edit=True, progress=amount, status=('Sleeping: ' + `amount` + '%' ) )
cmds.pause( seconds=1 )
cmds.progressWindow(endProgress=1)