ミニスクリプト集MENUへ戻る

名称 ・・・・・・・

入力ダイアログボックスの使用例

ルーチン名 ・・・・・・・

InpBaseData

スクリプトNo ・・・・・・・ sub- 002
file名 ・・・・・・・ script002.vbs(右クリックのコンテクストメニューでダウンロードできます。(windowsのみ)
修正(2003/05/26)UTF-8からANSIに統一。
概略 ・・・・・・・

数種類のダイアログアイテムを利用してスクリプトで必要な情報を取得するサンプル。

使用前提 ・・・・・・・

引数で渡される変数を呼び出し側で宣言して用意しておく必要あり。

依存関係 ・・・・・・・

特に無し

引数説明 ・・・・・・・

a,D12,D23,W1,W2,W3,H,IntervalID,UserSurf : 取得したデータを呼び出しもとに渡す為の引数。

戻り値説明 ・・・・・・・

OKボタンが押されたときtrue Cancelボタンが押されたときfalse

変数説明 ・・・・・・・

RESP:ダイアログからの戻り値(trueまたはfalse)
NG:不正なデータが入力されたときに設定されるフラグ、不正入力時「1」が設定され再入力を求める。

注意点 ・・・・・・・

戻り値でそれ以降の処理を切り分けていく。使用例を参照

 
スクリプト
Function InpBaseData( a, D12, D23, W1, W2, W3, H, IntervalD, UseSurf)
Dim RESP,NG
XShade.BeginDialog(20030321)
XShade.AppendResetButton()
XShade.AppendIntDialogItem"何寸勾配"			'0
XShade.AppendIntDialogItem"屋根材幅(mm)"		'1
XShade.AppendIntDialogItem"下地の幅(mm)"		'2
XShade.AppendIntDialogItem"屋根材の厚み(mm)"		'3
XShade.AppendIntDialogItem"下地材の厚み(mm)"		'4
XShade.AppendIntDialogItem"鼻隠しの厚み(mm)"		'5
XShade.AppendIntDialogItem"桁の高さ(mm)"		'6
XShade.AppendBoolDialogItem"表面凹凸有り"	    	'7
XShade.AppendIntDialogItem"凹凸のインターバル(mm)"	'8

XShade.IntPropertyValue(0)=5
XShade.IntPropertyValue(1)=30			
XShade.IntPropertyValue(2)=20
XShade.IntPropertyValue(3)=50
XShade.IntPropertyValue(4)=50
XShade.IntPropertyValue(5)=100
XShade.IntPropertyValue(6)=6800
XShade.BoolPropertyValue(7)=0
XShade.IntPropertyValue(8)=200
Do
RESP=XShade.AskDialog()
NG=0
if RESP then
a=XShade.IntPropertyValue(0)
D12=XShade.IntPropertyValue(1)
D23=XShade.IntPropertyValue(2)
W1=XShade.IntPropertyValue(3)
W2=XShade.IntPropertyValue(4)
W3=XShade.IntPropertyValue(5)
H=XShade.IntPropertyValue(6)
UseSurf=XShade.BoolPropertyValue(7)
IntervalD=XShade.IntPropertyValue(8)
else
     XShade.EndDialog()
InpBaseData=RESP
exit function
end if
if  a<0 or a>10then
NG=1:XShade.ShowMessageBox "10以下の数字を入れてください" ,0
else 
NG=0
end if
Loop while NG=1 
XShade.EndDialog()
InpBaseData=RESP
end function
使用例
mainSub()
sub mainSub()
dim a,d12,d23,w1,w2,w3,h,intv,surf
if not InpBaseData(a,d12,d23,w1,w2,w3,h,intv,surf) then
XShade.message"Cancelが押されました。"
Exit Sub
else
XShade.message "OKが押されました。"
end if
XShade.Message"処理が実行されます。"
end sub

ミニスクリプト集MENUへ戻る