作者ChenRobert (罗伯陈)
看板C_Sharp
标题[问题] 请问listbox滑鼠右键选取item的问题
时间Sun Apr 25 17:33:54 2021
我有设计listbox 并用滑鼠右键选取item,
可是listbox的list太长导致选不到想要的item,
要如何解决?
int NewIndex;
NewIndex = e.Y / listBox.ItemHeight;
listBox.SelectedIndex = NewIndex;
这是我的写法,请问listbox过长,选到的item会跳掉该怎麽半?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.34.233.240 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1619343236.A.7FD.html
1F:推 nicetw20xx: 是选不到还是跳掉? 04/25 23:32
2F:→ nicetw20xx: 选不到的话应该可以用滚轮 04/25 23:39
3F:推 nicetw20xx: 动态调整高度的话应该是 04/25 23:41
4F:→ nicetw20xx: listBox1.Height = 10 + 20 * listBox1.Items.Count; 04/25 23:41
5F:→ nicetw20xx: 也要记得form本体高度可能也要调过或是开卷轴 04/25 23:42
6F:→ nicetw20xx: 选的到要抓index的话应该可以直接用 04/25 23:42
7F:→ nicetw20xx: listBox.SelectedIndex 04/25 23:42
8F:→ nicetw20xx: 可以下F9中断点,看看发生了什麽事 04/25 23:44
其实滑鼠左键是选得到,可惜滑鼠右键选不到!
我的用意就是滑鼠右键等效滑鼠左键的功能,自己设计的需求。
但是过多的item 有外加滑鼠滚轮滚到下面,我对最下面的选项案右键就跑到上面。
https://i.imgur.com/TL4xzBe.jpg
如图,我对TPM.txt按右键,可是他选项会跑到MEupdate,清问该怎麽修正?
按照你的想法要修正的话,该怎麽抓到scrollbar的参数,我都找不到。
※ 编辑: ChenRobert (60.250.30.118 台湾), 04/26/2021 10:27:34
10F:→ nicetw20xx: MouseDown事件可以抓位置和滑鼠左键右键 04/27 00:07
11F:→ nicetw20xx: 了解你的意思了,你可以多点几个地方看看e.Y的值 04/27 00:14
12F:→ ChenRobert: 感谢,问题解决了 04/27 21:09