Intellij idea 通知弹出窗口添加到设置窗口的链接

Intellij idea 通知弹出窗口添加到设置窗口的链接,intellij-idea,intellij-plugin,Intellij Idea,Intellij Plugin,我有以下代码,这是从SOF上的一个问题复制过来的 private void showMyMessage() { ApplicationManager.getApplication().invokeLater(() -> { com.intellij.notification.Notification notification = GROUP_DISPLAY_ID_INFO .createNotification

我有以下代码,这是从SOF上的一个问题复制过来的

private void showMyMessage() {
        ApplicationManager.getApplication().invokeLater(() -> {
            com.intellij.notification.Notification notification = GROUP_DISPLAY_ID_INFO
                    .createNotification("<html>TLogin failed", " Go to <a href=\"" + "LINK!!!" + "\" target=\"blank\">Settings</a> to setup login data!</html>",
                            NotificationType.ERROR,
                            new NotificationListener.UrlOpeningListener(true));
            Project[] projects = ProjectManager.getInstance().getOpenProjects();
            Notifications.Bus.notify(notification, projects[0]);
        });
    }
private void showMyMessage(){
ApplicationManager.getApplication().invokeLater(()->{
com.intellij.notification.notification notification=组\显示\标识\信息
.createNotification(“TLogin失败”,“转到设置登录数据!”,
NotificationType.ERROR,
新建NotificationListener.UrlOpeningListener(true));
Project[]projects=ProjectManager.getInstance().getOpenProjects();
Notifications.Bus.notify(通知,项目[0]);
});
}
我想要一个链接而不是文本“link!!!”,你有什么建议? 我认为我需要创建操作并将此操作添加到我的组group\u DISPLAY\u ID\u INFO,但此组不是xml格式的,它只是存在于代码中。

private static void showMyMessage(字符串链接){
private static void showMyMessage(String LINK) {       
    ApplicationManager.getApplication().invokeLater(() -> {
        Notification notification = GROUP_DISPLAY_ID_INFO
            .createNotification("<html>TLogin failed", " Go to <a href=\"" + LINK + "\" target=\"blank\">Settings</a> to setup login data!</html>",
            NotificationType.ERROR,
            new NotificationListener.UrlOpeningListener(true));
        Project[] projects = ProjectManager.getInstance().getOpenProjects();
        Notifications.Bus.notify(notification, projects[0]);
    });
}
ApplicationManager.getApplication().invokeLater(()->{ 通知通知=组\显示\标识\信息 .createNotification(“TLogin失败”,“转到设置登录数据!”, NotificationType.ERROR, 新建NotificationListener.UrlOpeningListener(true)); Project[]projects=ProjectManager.getInstance().getOpenProjects(); Notifications.Bus.notify(通知,项目[0]); }); }
只需将链接替换为一个参数,并像
showMyMessage(“http://google.com“”


另外,您不需要在xml中配置组显示id,只需在代码中写入id。

如果以上面的“我的代码”为例,则需要在新建后立即添加

NotificationListener.UrlOpeningListener(true))

addAction(new NotificationAction("Settings") {
    @Override
    public void actionPerformed (@NotNull AnActionEvent anActionEvent,
            @NotNull Notification notification){
        DataContext dataContext = anActionEvent.getDataContext();
        Project project = PlatformDataKeys.PROJECT.getData(dataContext)
        ShowSettingsUtil.getInstance().showSettingsDialog(project,
                YOURCLASS.class);
    }
其中yourclass.class是一个实现可配置接口的类


现在单击设置,您将看到打开的设置窗口(yourclass.class)

谢谢您的回复,但是
showMyMessage(“http://google.com“
这段代码将引导我进入谷歌页面,我需要的是被重定向到文件->设置->我的插件。所以我试图理解idea如何知道它应该被重定向到哪里,以及我需要放置什么来代替链接