るりまサーチ

最速Rubyリファレンスマニュアル検索!
144件ヒット [1-100件を表示] (0.015秒)

別のキーワード

  1. json variant_binary
  2. win32ole win32ole_variant
  3. variant vt_i2
  4. variant vt_i1
  5. variant vt_cy

キーワード

検索結果

<< 1 2 > >>

WIN32OLE_VARIANT#value=(val) -> () (3079.0)

WIN32OLE_VARIANTの値を再設定します。

...WIN32OLE_VARIANTの値を再設定します。

指定した値でselfを再設定します。指定値が元のVARIANT型に合わない場合は元
VARIANT型に合うように引数を変換します。変換は、引数を一度VARIANT型に
変換してからCOMのVARIANT型変換関数(Va...
...します。
@raise WIN32OLERuntimeError selfが配列型です。あるいは、型変換に失敗し
ました。

obj = WIN32OLE_VARIANT.new(1) # VARIANT型にWIN32OLE::VARIANT::VT_I4を設定
obj.value = 3.2 # 3.2から新たなVARIANT型を作成し、そ...
...p obj.value # => 3 # VT_I4に変換した結果が設定される

selfが配列型のWIN32OLE_VARIANTの場合、バイト配列かつ引数が文字列の場合
を除いてWIN32OLERuntimeErrorを通知します。配列型の場合は、
WIN32OLE
_VARIANT#[]=を利用してください。...

WIN32OLE_VARIANT#[](i...) -> object (3043.0)

配列型のWIN32OLE_VARIANTの要素を取得します。

...配列型のWIN32OLE_VARIANTの要素を取得します。

selfは、WIN32OLE_VARIANT.arrayまたは引数に配列を指定して
WIN32OLE
_VARIANT.newで作成したインスタンスの必要があります。

@param i 各次元の0からのインデックスを「,」で区切って次元数分...
...ません。

@raise WIN32OLERuntimeError selfが配列型のWIN32OLE_VARIANTではありませ
ん。あるいはインデックスが0未満または要素数
以上を指定しています。

obj = WIN32OLE_VARIANT.new([[1,2,3],[4,5,6]])...
...p obj[0,0] # => 1
p obj[1,0] # => 4
p obj[2,0] # => WIN32OLERuntimeError
p obj[0, -1] # => WIN32OLERuntimeError...

WIN32OLE_VARIANT#[]=(i..., val) -> object (3043.0)

配列型のWIN32OLE_VARIANTの要素を設定します。

...配列型のWIN32OLE_VARIANTの要素を設定します。

selfは、WIN32OLE_VARIANT.arrayまたは引数に配列を指定して
WIN32OLE
_VARIANT.newで作成したインスタンスの必要があります。

@param i 各次元の0からのインデックスを「,」で区切って次元数分...
...ブジェクト(WIN32OLEオブジェクト)に変換します。
@return 引数で指定したインデックスの要素を返します。
@raise ArgError 引数の数が次元数と一致していません。

@raise WIN32OLERuntimeError selfが配列型のWIN32OLE_VARIANTではありませ...
...が0未満または要素数
以上を指定しています。

obj = WIN32OLE_VARIANT.new([[1,2,3],[4,5,6]])
obj[0,0] = 7
obj[1,0] = 8
p obj.value # => [[7,2,3], [8,5,6]]
obj[2,0] = 9 # => WIN32OLERuntimeError
obj[0, -1] = 9 # => WIN32OLERuntimeError...

WIN32OLE_VARIANT#vartype -> Integer (3033.0)

selfの型情報を取得します。

...

型情報は、WIN32OLE::VARIANTの定数値の組み合わせです。

obj = WIN32OLE_VARIANT.new("string")
obj.vartype # => 8 (WIN32OLE::VARIANT::VT_BSTR)
bytes = WIN32OLE_VARIANT.new([1,2,3,4,5], VT_UI1 | VT_ARRAY)
bytes.vartype # => 8209 (WIN32OLE::VARIANT::VT_ARRAY | VT_UI1)...

WIN32OLE_VARIANT#value -> object (3015.0)

値に対応するRubyオブジェクトを取得します。

...値に対応するRubyオブジェクトを取得します。

@return 値に対応するRubyのオブジェクトを返します。

obj = WIN32OLE_VARIANT.new(1, WIN32OLE::VARIANT::VT_BSTR)
obj.value # => "1" (VT_BSTRを指定して生成したので、Stringオブジェクトとなる)...

絞り込み条件を変える

WIN32OLE#_invoke(dispid, args, types) -> object | nil (51.0)

DISPIDとパラメータの型を指定してオブジェクトのメソッドを呼び出します。

...。型の指定には、
WIN32OLE
::VARIANTの定数を利用します。引数が不要な場
合は空配列を指定します。

@return メソッドの返り値。ただし返り値を持たないメソッドの場合はnil。

@raise WIN32OLERuntimeError オートメ...
...= WIN32OLE.new('Excel.Application')
excel._invoke(302, [], []) # DISPID 302は、Quitメソッド

MFCの制約により、バイト配列の型情報は通常
WIN32OLE
::VARIANT::VT_VARIANTとなります。このような場合に、バイト
配列を与えるつもりで

include WIN32OLE::...
...VARIANT
obj.method(DISPID, [[0, 1, 2, 3]], [VT_VARIANT])

のように記述すると、単に32ビット整数(VT_I4)の配列が送られることになり
空間効率が低下します。

引数の最終的な型がわかっている場合は、下記の例のように型指定パラメー...

WIN32OLE#_getproperty(dispid, args, types) -> object (21.0)

DISPIDとパラメータの型を指定してオブジェクトのプロパティを参照します。

...定します。引
数の順序は最左端の引数のインデックスを0とします。型の指定
には、WIN32OLE::VARIANTの定数を利用します。引数が不
要な場合は空配列を指定します。

このメソッドはCOMアーリーバ...
...返します。
@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。

DISPID_CELLS = 238
include WIN32OLE::VARIANT
excel = WIN32OLE.new('Excel.Applicatio...
...sheet._setproperty(DISPID_CELLS, [1, 2, 'hello'], [VT_I2, VT_I2, VT_BSTR])
puts sheet._getproperty(DISPID_CELLS, [1, 2], [VT_I2, VT_I2]).value #=> 'hello'
workbook.Close(:SaveChanges => false)
excel.Quit

DISPIDはWIN32OLE_METHOD#dispidから取得できます。

@see WIN32OLE::VARIANT...

WIN32OLE#_setproperty(dispid, args, types) -> () (21.0)

DISPIDとパラメータの型を指定してオブジェクトのプロパティを設定します。

...
WIN32OLE
::VARIANTの定数を利用します。

@raise WIN32OLERuntimeError オートメーションサーバの呼び出しに失敗しました。
理由はメッセージのHRESULTを調べてください。

DISPID_CELLS = 238
include WIN32OLE::VA...
...RIANT
excel = WIN32OLE.new('Excel.Application')
puts excel._setproperty(558, # VisibleプロパティのDISPIDは558
[true], [VT_BOOL])
workbook = excel.Workbooks.Add
sheet = workbook.Worksheets[1]
sheet._setproperty(DISPID_CELLS, [1, 2, 'hello'], [VT_I2...
..., VT_I2, VT_BSTR])
puts sheet._getproperty(DISPID_CELLS, [1, 2], [VT_I2, VT_I2]).value #=> 'hello'
workbook.Close(:SaveChanges => false)
excel.Quit

DISPIDはWIN32OLE_METHOD#dispidから取得できます。

@see WIN32OLE::VARIANT...

WIN32OLE_PARAM#ole_type -> String (21.0)

パラメータの型名を取得します。

...します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.ole_type # => VARIANT

OLEオートメーションの型名は、対応するWIN32OLE::VARIANTの定数の先
頭の...
...「VT_」を削除した名称を持ちます。

たとえば、32ビット符号付き整数であれば「I4」となります。

@see WIN32OLE::VARIANT...
<< 1 2 > >>