0

その中にリストボックスがあるフォームがあります。アイテム (通常は 20 個のアイテム) を選択してアイテムを右クリックすると、別のポップアップ フォームが開きます。問題は、選択したアイテムを右クリックすると、その上にマウスがある 1 つのアイテムを除いて選択が解除されることです。

右クリック後にリスト ボックスの項目の選択を解除できないようにするにはどうすればよいですか。

マウスの右クリックのコードは次のようになります。

Private Sub ItemList_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
 Const RIGHTBUTTON = 2
 Dim udtPos As POINTAPI
 Dim frm As Access.Form

If Button = RIGHTBUTTON Then

Set mp = New [*clsMousePosition]
GetCursorPos udtPos


DoCmd.OpenForm "frmshortcut"
DoCmd.MoveSize udtPos.x * mp.TwipsPerPixelX, udtPos.y * mp.TwipsPerPixelY
Forms!frmshortcut!txtparameter = Me.ItemList.Value


 End If

End Sub
4

1 に答える 1

0

Multi Selectプロパティがに設定されている場合、Simpleこれは発生しないはずです。

Mutli Selectに設定されていると想定してExtendedいます。この場合CTRL、マウスでアイテムを右クリックしながらボタンを押して、左クリックの場合と同じように既存の選択を維持する必要があります。

簡単に言うと、右クリックは左クリックと同じことを行いますが、コンテキスト メニューも開きます。

于 2013-08-16T11:40:22.930 に答える