タイトル | : As Any VB6 からの移行 |
記事No | : 11503 |
投稿日 | : 2015/10/13(Tue) 21:56 |
投稿者 | : おおしろ |
初めて投稿いたします。 VB初心者です。
Visual Basic掲示板内にあった魔界の仮面弁士さんのサンプルコードを.NETに移行しています。 サムプルコードは以下の通りです。 --------------------------------- Option Explicit
Private Declare Function GetCursorPos Lib "user32" _ (ByRef xyScreen As Long) As Long Private Declare Function AccessibleObjectFromPoint Lib "oleacc" _ (ByVal xScreen As Long, _ ByVal yScreen As Long, _ ByRef ppvObject As Any, _ ByRef pvarChild As Variant) As Long Private Sub Form_Load() Timer1.Interval = 250 Timer1.Enabled = True WebBrowser1.Navigate "hogehoge" End Sub
Private Sub Timer1_Timer() Dim xy(1) As Long GetCursorPos xy(0) Dim objAcc As IAccessible Dim child As Variant AccessibleObjectFromPoint xy(0), xy(1), objAcc, child List1.Clear On Error Resume Next Dim ltwh(3) As Long objAcc.accLocation ltwh(0), ltwh(1), ltwh(2), ltwh(3), child List1.AddItem "Pos:" _ & "Left" & CStr(ltwh(0)) & "," _ & "Top" & CStr(ltwh(1)) & "," _ & "Width" & CStr(ltwh(2)) & "," _ & "Height" & CStr(ltwh(3)) List1.AddItem "Name=" & objAcc.accName(child) List1.AddItem "Value=" & objAcc.accValue(child) List1.AddItem "Description=" & objAcc.accDescription(child) End Sub
--------------------------------------------
そして私が変更して現状は以下のようになっています。 ------------------------------------------------------- Option Explicit On
Public Class Form1
Private Declare Function GetCursorPos Lib "user32" _ (ByRef xyScreen As Long) As Long
Private Declare Function AccessibleObjectFromPoint Lib "oleacc" _ (ByVal xScreen As Long, _ ByVal yScreen As Long, _ ByRef ppvObject As Any, _ ByRef pvarChild As Object) As Long
Private Sub Form_Load() Timer1.Interval = 250 Timer1.Enabled = True WebBrowser1.Navigate("hogehoge") End Sub
Private Sub Timer1_Timer() Dim xy(1) As Long GetCursorPos(xy(0))
Dim objAcc As IAccessible Dim child As Object AccessibleObjectFromPoint(xy(0), xy(1), objAcc, child)
List1.Items.Clear() On Error Resume Next Dim ltwh(3) As Long objAcc.accLocation(ltwh(0), ltwh(1), ltwh(2), ltwh(3), child) List1.Items.Add("Pos:" _ & "Left" & CStr(ltwh(0)) & "," _ & "Top" & CStr(ltwh(1)) & "," _ & "Width" & CStr(ltwh(2)) & "," _ & "Height" & CStr(ltwh(3))) List1.Items.Add("Name=" & objAcc.accName(child)) List1.Items.Add("Value=" & objAcc.accValue(child)) List1.Items.Add("Description=" & objAcc.accDescription(child)) End Sub
End Class ------------------------------------------------------------------
ここで、「As Any」の部分をどのうように変更してよいかわかりません。 「IAccessible」の部分の扱いがあっているのかも不安です。 申し訳ないですがご教授いただきたいです。
|