gpt4 book ai didi

java - 如何使用 Java swt 创建黄色提示?

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

有人能给我解释一下吗?如何使用 Java swt 创建黄色提示/通知?

我希望当我在表格中的单元格上移动时弹出一个小通知。像这样:

enter image description here

这是我的 Java 代码:

protected void checkAction() throws Exception {

//Erstellen einer neuen Shell
Shell shell = new Shell();
shell.setSize(280, 300);
shell.setText("Testtabelle");

//Erstellen einer neuen Tabelle
final Table table = new Table(shell, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
table.setLinesVisible(true);
table.setHeaderVisible(true);

//Einlesen der Überschriften und Vergabe der Namen
String[] titles = {"Element", "Stage", "Type", "Generate-User", "Change-User" };
for (int i = 0; i < titles.length; i++) {
TableColumn column = new TableColumn(table, SWT.NONE);
column.setText(titles[i]);
}

// Inhalte hinzufügen
final int count = 4;
for (int i = 0; i < count; i++) {
TableItem item = new TableItem(table, SWT.NONE);
item.setText(0, "Test "+i);
item.setText(1, ""+(i+1));
item.setText(2, "Testtype");
item.setText(3, "562910");
item.setText(4, "423424");
}

// Tabelle und Shell Packen
for (int i = 0; i < titles.length; i++) {
table.getColumn(i).pack();
}
table.setSize(table.computeSize(SWT.DEFAULT, 200));
shell.pack();

//MouseListener

table.addListener(SWT.MouseHover, new Listener() {
public void handleEvent(Event event) {
Rectangle clientArea = table.getClientArea();
Point pt = new Point(event.x, event.y);
int index = table.getTopIndex();
// System.out.println("TopIndex: "+index);
while (index < table.getItemCount()) {
boolean visible = false;
TableItem item = table.getItem(index);
for (int i = 0; i < (table.getItemCount()+1); i++) {
Rectangle rect = item.getBounds(i);
if (rect.contains(pt)) {
String selected = table.getItem(index).getText(i);

if (selected.equals("562910")){
String real = "Jonas";
System.out.println(real);

}
else{
System.out.println("Ausgewählt: "+selected);
}

}
if (!visible && rect.intersects(clientArea)) {
visible = true;
}
}
if (!visible)
return;
index++;
}
}
});


// Shell öffnen
shell.open();



}

最佳答案

仅使用 SWT 使用 SWT Snippet 125 中的代码.

如果您可以使用 JFace,那么 ColumnViewerToolTipSupport 会更容易。

关于java - 如何使用 Java swt 创建黄色提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21723280/

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