11.入出力ボックス             [もくじへ] [トップページへ]

11.1 ダイアログボックス

===================================================

プログラム例題17

ダイアログボックスから半径を入力して円の面積と、円周を求めよ。

=========================================================

<HTML>
<HEAD>
   <TITLE>例題17</TITLE>
</HEAD>
<BODY>

<SCRIPT LANGUAGE="VBScript">
<!--
        
Dim r, S, L, PI
        PI = 3.141592653589793
'

        

        r = prompt( "半径 = ", "" )
        If r<>"" Then
                r = Csng(r)
                S = r*r*PI
                L = 2*r*PI
'
                document.write "<BR>"
                document.write "半径 = ", r, "<BR>"
                document.write "面積 = ", S, "<BR>"
                document.write "円周 = ", L, "<BR>"
        
End If
'
-->
</SCRIPT>

</BODY>
</HTML>

 

半径 5 の場合の実行結果は、次のようになります。

 

半径 = 5
面積 = 78.5398163397448
円周 = 31.4159265358979

 

ダイアログボックスは一行のテキストボックスと、二個のコマンドボックスから

なり、プログラミングも簡単にできるので便利です。

 r = prompt( "半径 = ", "" )

この一行でダイアログボックスを表示し、テキストボックスのデータを r に代

入します。一番目の引数 "半径 = " はダイアログボックスに表示されるメ

ッセージ、二番目の引数 "" はテキストボックスの初期値です。この場合 ""

ですので、何も表示されません。

If r<>"" Then
        r = Csng(r)
        S = r*r*PI
        L = 2*r*PI
'
        document.write "<BR>"
        document.write "半径 = ", r, "<BR>"
        document.write "面積 = ", S, "<BR>"
        document.write "円周 = ", L, "<BR>"
End If

ダイアログボックスにデータを入力し、OKボタンをクリックしたとき実行されま

す。

 r = Csng(r) はテキストボックスに入力されたデータを単精度の数値に変換

し、再度 r に代入し直しています。

キャンセルボタンをクリックすると、計算されません。

promt は、JavaScript とコンパチブル(共通)なダイアログボックスですが、

VBScript にはこの他に、VB と共通の InputBox もあります。

 


11.2 確認メッセージボックス     [もくじへ] [トップページへ]

===================================================

プログラム例題18

ダイアログボックスから半径を入力して、データの確認をメッセージボ

ックスで行った後、円の面積と円周を求めよ。

=========================================================

<HTML>
<HEAD>
   <TITLE>例題18</TITLE>
</HEAD>
<BODY>

<SCRIPT LANGUAGE="VBScript">
<!--
        
Dim r, k, S, L, PI
        PI = 3.141592653589793
'

        

        r = prompt( "半径 = ", "" )
        k = confirm( "半径は " & r & " でいいですか" )
        If k = true then
                If r<>"" Then
                        r = Csng(r)
                        S = r*r*PI
                        L = 2*r*PI
'
                        document.write "<BR>"
                        document.write "半径 = ", r, "<BR>"
                        document.write "面積 = ", S, "<BR>"
                        document.write "円周 = ", L, "<BR>"
                
End If
        End If
'
-->
</SCRIPT>

</BODY>
</HTML>

 

半径 5 の場合、次のようなメッセージボックスが表示されます。

     

          

k = confirm( "半径は " & r & " でいいですか" )

この一行のプログラムで、メッセージボックスを表示します。

"半径は " & r & " でいいですか" は、表示されるメッセージで、半径 r

を前後の文字と結合して一つのメッセージにしています。

k は、OKの場合 True、キャンセルの場合 False になります。

True False は特別な定数で、True は真、 False は偽を表します。 

confirm は、JavaScript とコンパチブル(共通)なダイアログボックスですが、

VBScript にはこの他に、VB と共通の MsgBox もあります。MsgBox は指

定の仕方が複雑ですが、その分だけいろいろな種類のボックスを作れます。

 


11.3 警告メッセージボックス     [もくじへ] [トップページへ]

===================================================

プログラム例題19

ダイアログボックスから数値を入力して、その平方根を求めよ。もし

入力データが負のときは、警告メッセージを表示せよ。

=========================================================

<HTML>
<HEAD>
   <TITLE>例題19</TITLE>
</HEAD>
<BODY>

<SCRIPT LANGUAGE="VBScript">
<!--
        
Dim x, r
'
        x = prompt( "データ = ", "" )
        If x <>"" Then
                x = Csng(x)
                If x >=0 Then
                        r = Sqr(x)
                        document.write "<BR>"
                        document.write " = ", x, "<BR>"
                        document.write "Sqr(X) = ", r, "<BR>"
                Else
                alert "マイナスのデータです"
                End If
        End If
'
-->
</SCRIPT>

</BODY>
</HTML>

 

alert "マイナスのデータです"

マイナスのデータを入力すると、この文が実行され次のようなメッセージを表

示します。

       

 


[もくじへ] [トップページへ]

 

次回は、いよいよ『測量計算プログラミングに挑戦』の予定です。(9月10日ごろ)

この講座に対する、ご意見やご要望はメールでお願いします。

『VBScriptによる測量計算プログラミング入門』 

講師 大愚良寛


[もくじへ] [トップページへ] [次ページへ]