Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8095 / 76736 ←次へ | 前へ→

【74219】Re:Listbox間のドラッグアンドドロップ
発言  kanabun  - 13/4/30(火) 9:26 -

引用なし
パスワード
   ▼Abyss さん:
いつもありがとうございます

>今回のケースなら、IAccessibleのaccHitTestメソッドで
>indexを取得する方法が簡単だと思います。
>kanabunさんのご紹介掲示板でshiraさんも
>そのような方法を提示してます。

当時は GetTextExtentPoint32 API がこういうときにも使えるとの
shiraさんからのレスに「舞い上がっていた」ので、ListBoxのTextHeight
取得のための紹介下さった他の方法、あまり検証してませんでしたが、
そうですか、あのスレではそういうことにも言及があったんですねぇ

>accHitTestメソッドの利用なら割と簡単に
>操作が可能になります。

なるほど、こういうときに accHitTest で調べれるんですね、
勉強になります。
ほかにも いつかパクリたくなるアイデアいっぱいです。

>  With New DataObject
>    .SetText ObjPtr(Me)
>    .StartDrag
>  End With


>  ptr = CLng(Data.GetText)
>  
>  If ptr = ObjPtr(Me) Then
>    Effect = fmDropEffectNone: Exit Sub
>  End If
>  
>  If Ptr2Cls(ptr).Index < 0 Then
>    Effect = fmDropEffectNone
>  End If


>  Dim fIndex As Long
>  Dim ptr As Long
>  Dim acc As IAccessible, mCls As Class1
>  Dim LBFrom As MSForms.ListBox
>  
>  If Action <> fmActionDragDrop Then Exit Sub
>  
>  ptr = CLng(Data.GetText)
>  If ptr = ObjPtr(Me) Then Exit Sub
>  
>  Set mCls = Ptr2Cls(ptr)
>  fIndex = mCls.Index
>  If fIndex < 0 Then Exit Sub
>  
>  Set acc = LBox
>  RtlMoveMemory ii(0), GetMessagePos()
>  NewIndex = acc.accHitTest(ii(0), ii(1)) - 1

0 hits

【74193】Listbox間のドラッグアンドドロップ 亜矢 13/4/27(土) 20:52 質問
【74195】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/27(土) 21:29 発言
【74197】Re:Listbox間のドラッグアンドドロップ 亜矢 13/4/28(日) 4:30 質問
【74198】Re:Listbox間のドラッグアンドドロップ UO3 13/4/28(日) 8:25 発言
【74199】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/28(日) 8:31 発言
【74202】Re:Listbox間のドラッグアンドドロップ 亜矢 13/4/28(日) 12:25 発言
【74203】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/28(日) 12:26 発言
【74204】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/28(日) 14:40 発言
【74205】Re:Listbox間のドラッグアンドドロップ 亜矢 13/4/28(日) 15:47 質問
【74206】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/28(日) 17:02 発言
【74212】エウレカ! 13/4/29(月) 7:18 発言
【74209】Re:Listbox間のドラッグアンドドロップ UO3 13/4/28(日) 21:54 発言
【74210】Re:Listbox間のドラッグアンドドロップ UO3 13/4/28(日) 21:58 発言
【74217】Re:Listbox間のドラッグアンドドロップ Abyss 13/4/29(月) 23:17 発言
【74219】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/30(火) 9:26 発言
【74224】Re:Listbox間のドラッグアンドドロップ UO3 13/4/30(火) 14:33 発言
【74221】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/30(火) 13:03 発言
【74222】Re:Listbox間のドラッグアンドドロップ kanabun 13/4/30(火) 13:17 発言
【74223】Re:Listbox間のドラッグアンドドロップ 亜矢 13/4/30(火) 14:24 質問
【74225】Re:Listbox間のドラッグアンドドロップ UO3 13/4/30(火) 15:23 発言
【74226】Re:Listbox間のドラッグアンドドロップ Abyss 13/4/30(火) 18:23 発言
【74227】Re:Listbox間のドラッグアンドドロップ Abyss 13/4/30(火) 19:32 発言
【74232】Re:Listbox間のドラッグアンドドロップ 亜矢 13/5/1(水) 3:23 質問
【74233】Re:Listbox間のドラッグアンドドロップ kanabun 13/5/1(水) 9:01 発言
【74234】Re:Listbox間のドラッグアンドドロップ 亜矢 13/5/1(水) 9:09 発言
【74237】Re:Listbox間のドラッグアンドドロップ kanabun 13/5/1(水) 10:32 発言
【74236】Re:Listbox間のドラッグアンドドロップ UO3 13/5/1(水) 9:37 発言
【74238】Re:Listbox間のドラッグアンドドロップ Abyss 13/5/1(水) 12:11 発言
【74258】Re:Listbox間のドラッグアンドドロップ 亜矢 13/5/8(水) 19:56 お礼

8095 / 76736 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free