Tag: 动作

使用注册表管理Swing操作

通常,当我创建Swing(或任何UI)应用程序时,我会在菜单项和按钮上显示各种操作。 我通常创建一个动作注册表并将动作存储在那里,然后当发生某些事情时,我会根据应用程序的状态在注册表中禁用/启用动作。 我不会称自己是一个狂热的Swing开发人员,虽然我很了解它,但这是一个非常典型的管理动作的模式吗? 或者有更标准的方法吗? 谢谢, 杰夫

getSource()和getActionCommand()

什么是getSource? 它返回了什么? 什么是getActionCommand()以及它返回什么? 我对这两个人之间的困惑可以让任何人给我或区别对待我吗? 在UI中使用getSource和getActionCommand()有什么用? 特别是TextField还是JTextField?

为什么这个动作不抽象?

我很难理解为什么类中的一个Actions是抽象的而另一个类中的Action不是。 源代码1 :(编译时出错: https : //gyazo.com/cd3c21a8562589451814903febaf89fe ) import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Play extends JFrame{ Engine drawPanel = new Engine(); private int x = 0; private int y = 0; public int getX(){ return x; } public int getY(){ return y; } public Play(){ Action rightAction = new AbstractAction(){ public void actionPreformed(ActionEvent […]

Struts2没有针对命名空间映射的Action和与上下文路径关联的操作名称

我是Struts2的初学者,我知道这个问题已经在这里问了很多次,但我试着解决它并在这里阅读了很multithreading,花了6个小时仍然无法让它工作。 真的需要更多的建议…… 这是我的包裹 Struts2Test +Struts2Test/src +tw.com.rrstudio.java.test -TestAction.java +Struts2Test/build +Struts2Test/WebContent +Struts2Test/WebContent/META-INF +Struts2Test/WebContent/WEB-INF/classes +Struts2Test/WebContent/WEB-INF/lib -Struts2Test/WebContent/WEB-INF/spring-context.xml -Struts2Test/WebContent/WEB-INF/spring-mvc.xml -Struts2Test/WebContent/WEB-INF/struts.xml -Struts2Test/WebContent/WEB-INF/struts2-action.xml -Struts2Test/WebContent/WEB-INF/web.xml -Struts2Test/WebContent/error.jsp -Struts2Test/WebContent/index.jsp -Struts2Test/WebContent/TestAction.jsp 我的web.xml Struts2Test index.jsp contextConfigLocation /WEB-INF/spring-context.xml /WEB-INF/spring-mvc.xml org.springframework.web.context.ContextLoaderListener struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter actionPackages tw.com.rrstudio.java.test HTTP://java.sun.com/jsp/jstl/core /WEB-INF/lib/tld/c.tld *.jsp UTF-8 struts2 /* springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/spring-mvc.xml 1 springmvc /* 10 还有,struts.xml /WebContent/error.jsp /WebContent/index.jsp /WebContent/TestAction.jsp 的index.jsp Index of Struts2Test Index of […]

Java Swing:使用ActionMap

我之前看过一篇建议赞成动作而不是听众的post。 我对ActionMap不太熟悉。 每种方法有哪些缺点? 我喜欢制作实现监听器的内部类。 这是一种不好的做法吗? 谢谢

将键绑定添加到JButton,从动作命令获取其操作?

我在另一个问题中找到了一个很酷的方法来创建一个JButton,其行为以简单的方式编写和查看: public JButton makeToolbarButton(String title, String actionCommand) { JButton button = new JButton(title); button.setActionCommand(actionCommand); button.addActionListener(this); return button; } 此方法所在的类实现了ActionListener,而按钮命令则由以下方式指定: public void actionPerformed(ActionEvent e) { int action = Integer.parseInt(e.getActionCommand()); switch(action) { case 1: System.out.println(“This button pressed.”); break; } } 按钮由以下人员制作: JButton button1 = makeToolbarButton(“Button 1”, “1”); 所以我的问题是:我可以通过这种方法将KeyStrokes添加到按钮吗? 我试过这样的东西(在makeToolbarButton方法内): button.getInputMap().put(KeyStroke.getKeyStroke(“B”), “button_pressed”); button.getActionMap().put(“button_pressed”, button.getAction()); 但我认为这不起作用,因为动作命令实际上并没有将动作分配给特定按钮。 有没有办法在makeToolbarButton()方法中添加一些东西,还有KeyStroke的参数来实现这个目的?

使用Struts应用程序时出现404错误

几天之后,我在运行Struts Web应用程序时遇到了一些问题。 我尝试了StackOverflow的几个与我的问题有关的解决方案,但没有一个有效。 web.xml中 Struts2 Application struts2 org.apache.struts2.dispatcher.FilterDispatcher struts2 /* Login.jsp 在struts.xml Welcome.jsp Login.jsp Login.jsp页面 Struts 2 – Login Application | ViralPatel.net Struts 2 – Login Application LoginAction.java package net.viralpatel.struts2; public class LoginAction { private String username; private String password; public String execute() { if (this.username.equals(“admin”) && this.password.equals(“admin123”)) { return “success”; } else { return […]

什么是更好用:Action vs ActionListener?

我自己,我总是使用ActionListener作为swing事件处理程序(例如按钮单击),它是我在大多数swing应用程序中看到的最常见的监听器。 但是,Stackoverflow中的一些Swing专业人员经常建议使用Action而不是ActionListener 。 这样做有什么好处?

使用JavaFX中的Enter键触发按钮的onAction

我是JavaFx的新手。 在我的JavaFX应用程序中,我设置了onAction属性,当我使用鼠标按下按钮时,它工作正常。 即使用户按下Enter按钮,我也要发射相同的内容。 我知道我可以使用偶数处理程序来做到这一点。 但是当我阅读onAction JavaDoc时,它说这个事件会被按键发生。 楼盘简介: 按钮的动作,每当按钮被触发时都会调用它。 这可能是由于用户使用鼠标单击按钮,或通过触摸事件, 或通过按键 ,或者开发人员以编程方式调用fire()方法。 但是当我按下Enter键时没有任何反应。 在文档中是错误的吗? 如果不在按钮上添加alistener,还有其他方法可以实现吗? PS 在评论后我用空格键检查然后它被解雇了。 但我想将其设置为Enter键。 我有很多按钮。 我试过了button.setDefaultButton(true); 但它不会被解雇。 我认为这是因为有多个按钮。 如果我只将它设置为一个按钮就可以了。 如何设置多个按钮?

如何在swing中手动调用Action?

对于我的生活,我似乎无法找到关于Java Swing Actions的详细信息:’(当我遇到它们时,我立即意识到它们的用处。到目前为止,这一切都很容易使用。现在我被困在一个小东西:如何我手动运行它们?我的意思是代码?注意我正在使用Netbeans构建GUI(如果这有任何区别)。我已经到了: Application a = Application.getInstance(JPADemoApp.class); ApplicationContext ctx = a.getContext(); ActionMap am = ctx.getActionMap(JPADemoView.class, this.app); Action act = am.get(“fetchOrders”); (我在单独的行上写了所有内容以简化调试) 所以现在我对Action有了一个有效的参考。 现在我该如何运行它?