5

vbscript は列挙をサポートしていないため、この問題に対処する方法はありますか?

私はこのコードを持っています:

Private Enum dataType
 dt_Nothing
 dt_Boolean
 dt_Decimal
 dt_Double
 dt_Integer
 dt_string
 dt_Array
 dt_NetJSON
End Enum

前もって感謝します!

4

5 に答える 5

8

定数の使用は非常に論理的です。一方、VB Enum を模倣する独自のクラスのグローバル インスタンスを使用できます。列挙型のように見えることに注意してください。本当に必要かどうかはわかりません。

Class EnumDataType
    Public  dt_Nothing, dt_Boolean, dt_Decimal
    Private Sub Class_Initialize
        dt_Nothing = 1
        dt_Boolean = 2
        dt_Decimal = 4
    End Sub
End Class

Dim dataType
Set dataType = New EnumDataType

WScript.Echo dataType.dt_Nothing Or dataType.dt_Boolean Or dataType.dt_Decimal
于 2012-06-22T00:54:15.033 に答える
5

http://www.tek-tips.com/viewthread.cfm?qid=1146844によると、最良の方法は定数を使用することです。

Const dt_Nothing = Something
Const dt_Boolean = Something
Const dt_Decimal = Something
Const dt_Double = Something
Const dt_Integer = Something
Const dt_string = Something
Const dt_Array = Something
Const dt_NetJSON = Something

別の方法が見つかりませんでした。何か良い方法があれば探してみます。

于 2012-06-21T13:54:03.707 に答える
-5

以下は、動作することがわかったコード行です。

Const navOpenInNewTab = &H800
Set IE1=CreateObject("InternetExplorer.Application")
IE1.Visible=true
IE1.Navigate2 "http://blogs.msdn.com"
IE1.Navigate2 "http://blogs.msdn.com/tonyschr", CLng(navOpenInNewTab)
IE1.Navigate2 "http://blogs.msdn.com/oldnewthing", CLng(navOpenInNewTab)
IE1.Navigate2 "http://msdn.microsoft.com", CLng(navOpenInNewTab)

'次のコード行を使用して IE を閉じることを忘れないでください: IE1.Quit

于 2013-01-31T20:25:46.910 に答える