gpt4 book ai didi

java - 在 SWT 中为列表项创建右键单击选项

转载 作者:行者123 更新时间:2023-11-30 07:08:08 25 4
gpt4 key购买 nike

我在 TabFolder 中创建了一个 List,对于该元素列表,我想为列表中的每个元素提供右键单击选项。那么如何在 SWT 中完成此操作。

我已将元素添加到列表中,如下所示:

list.add("a");
list.add("b");
list.add("b");
list.add("v");
list.add("d");
list.add("l");

现在如何为每个元素创建此列表的右键单击选项?

最佳答案

这应该是一个很好的起点:

public static void main(String[] args)
{
final Display display = new Display();
final Shell shell = new Shell(display);
shell.setText("StackOverflow");
shell.setLayout(new FillLayout());

final List list = new List(shell, SWT.BORDER);
list.add("a");
list.add("b");
list.add("b");
list.add("v");
list.add("d");
list.add("l");

final Menu menu = new Menu(list);
list.setMenu(menu);
menu.addMenuListener(new MenuAdapter()
{
public void menuShown(MenuEvent e)
{
int selected = list.getSelectionIndex();

if(selected < 0 || selected >= list.getItemCount())
return;

MenuItem[] items = menu.getItems();
for (int i = 0; i < items.length; i++)
{
items[i].dispose();
}
MenuItem newItem = new MenuItem(menu, SWT.NONE);
newItem.setText("Menu for \"" + list.getItem(list.getSelectionIndex()) + "\"");
}
});

shell.pack();
shell.open();

while (!shell.isDisposed())
{
if (!display.readAndDispatch())
{
display.sleep();
}
}
display.dispose();
}

看起来像这样:

enter image description here

关于java - 在 SWT 中为列表项创建右键单击选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24245071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com