<input type="file">のvalue

解決


グリーン  2004-04-08 01:27:11  No: 82918  IP: [192.*.*.*]

他のトピックでも同じような質問があったのですが、解決にたどり着けませんでした。<input type="file" name="pic" size="20">に対して、
Private sub Command1_Click()
Dim strFilePath as String
    strFilePath=WebBrowser1.Document.frames(1).frames(3).Document.Forms(0).elements(12).value
としたのですが、エラーになります。XMLHTTPオブジェクトを使うとかおっしゃっていたのですが、よくわからずここに質問させていただきました。

編集 削除
グリーン  2004-04-08 01:28:06  No: 82919  IP: [192.*.*.*]

すいません。
WebBrowser1.Document.frames(1).frames(3).Document.Forms(0).elements(12).value=strFilePath
の間違いです。逆でした。

編集 削除
魔界の仮面弁士  2004-04-08 16:48:40  No: 82920  IP: [192.*.*.*]

残念ながら、値の取得はできますが、設定はできない仕様です。諦めましょう。

編集 削除
グリーン  2004-04-08 17:40:06  No: 82921  IP: [192.*.*.*]

ご回答ありがとうございます。値の取得だけでもかまわないのですが、どのようにするのでしょうか?またXMLHTTPオブジェクトを利用してのやり方はどのようなものなのでしょうか?

編集 削除
グリーン  2004-04-10 02:43:32  No: 82922  IP: [192.*.*.*]

Private sub Command1_Click()
Dim strFilePath as String
    With WebBrowser1.Document.frames(1).frames(3).Document.Forms(0)
        .elements(12).Click '「参照」をクリックし、ダイアログを開く
        strFilePath=.elements(12).value ’ダイアログのFileNameを代入
    End With
    picImage.Picture=LoadPicture(strFilePath)
End Sub

で解決しました。ちなみに「参照」を押し一旦valueが確定してしまうと、変更がきかないので、そのページをもう一度読み込むといった手順です。XMLHTTPを使うより楽ですよね?色々ありがとうございました。

編集 削除