当有一个包含JButton的子组件时,JPanel不会监听键事件

我正在为我的大学项目编写地图编辑器。 而且我遇到了一个问题,即地图面板不应该正在监听关键事件。 当我添加一个ToolBarPane(扩展JPanel)时,会发生这种情况,例如JButton,JComboBox,它实现了ActionListener,地图面板(将JPanel扩展)一起放到了Frame(我使用了BorderLayout)。 我有System.out.println语句来测试是否收到按键,并且它不打印,如果我删除了ToolBar,键监听器再次工作,那么mouseListenner被禁用就像keyListener一样,这意味着我可以’ t处理新闻事件等,但mouseListener工作正常,我仍然可以处理鼠标移动事件。 这是一个没有ToolBarPane的屏幕截图 http://img684.imageshack.us/img684/3232/sampleku.png 请注意,您可以使用鼠标将图像放在地图上,您也可以像使用激光工具一样使用鼠标选择图像,按数字键可以在不同的图像之间切换,这样可以正常工作,直到我添加显示的ToolBarPane像这样: img291.imageshack.us/img291/8020/failve.png(请在此之前添加http,我只能发布一个超链接) (我不能在这里发布图片,因为我是新用户) 使用ToolBarPane,我无法再处理关键事件。 我想这可能是因为焦点已经以某种方式转移到该面板,但根本不确定。 身体是否知道这一点并且可以帮助我? 非常感谢

没有懒惰地初始化一个角色集合

嗨我有两个这样的课程: public class Indicator implements Serializable { … @OneToMany(mappedBy = “indicator”,fetch=FetchType.LAZY) private List indicatorAlternateLabels; public List getIndicatorAlternateLabels() { return indicatorAlternateLabels; } public void setIndicatorAlternateLabels(List indicatorAlternateLabels) { this.indicatorAlternateLabels = indicatorAlternateLabels; } … } public class IndicatorAlternateLabel implements Serializable { … @ManyToOne(cascade = CascadeType.REFRESH, fetch = FetchType.EAGER) @JoinColumn(name = “IndicatorID”) @XmlTransient private Indicator indicator; … } 当我像这样使用它们时: […]

@Bean和@Autowired之间的区别

为什么我不能在这种情况下使用@Autowired ? @SpringBootApplication public class Application { @Autowired BookingService bookingService; public static void main(String[] args) { bookingService.book(“Alice”, “Bob”, “Carol”); } } 但可以使用@Bean @SpringBootApplication public class Application { @Bean BookingService bookingService() { return new BookingService(); } public static void main(String[] args) { ApplicationContext ctx = SpringApplication.run(Application.class, args); BookingService bookingService = ctx.getBean(BookingService.class); bookingService.book(“Alice”, “Bob”, “Carol”); } } […]

R xlsx包错误

Error in .jcall(“RJavaTools”, “Ljava/lang/Object;”, “invokeMethod”, cl, : java.util.zip.ZipException: invalid code — missing end-of-block 您尝试使用时是否有任何人有此错误 dat <- read.xlsx("data.xlsx", sheetIndex=1, colIndex=colIndex, rowIndex=rowIndex)?

AlarmManager与日历对象Android java

你好我试图制作一个简单的完全工作的闹钟,但我坚持做出正确的警报……我不明白的是这个: https://developer.android.com/training/scheduling/alarms.html // Set the alarm to start at 8:30 am Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(System.currentTimeMillis()); calendar.set(Calendar.HOUR_OF_DAY, 8); calendar.set(Calendar.MINUTE, 30); // setRepeating() lets you specify a precise custom interval–in this case, // 20 minutes. alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 1000 * 60 * 20, alarmIntent); 我们将当前时间以milis设置为日历,所以如果我们在milis中获得时间,那么现在将开始以milis设置当前时间然后分配小时和分钟的目的是什么? 在milis设定时间设定从1970年到现在的几百毫秒? 日历在milis中获取时间返回我们设置的小时以来的milis数量? 要么 ? 我根本不理解这些线条,为什么我们以毫秒为单位设置当前时间然后设置小时点火? 编辑 – 如果我设置闹钟在10:00和10点05分触发,我该怎么办? 它立即开火……..

创建一个swing gui来逐个像素地操纵png

正如我已经在我的问题的标题中声明的那样,我将要制作一个特定png图像的特定区域的编辑器,通过点击它逐个像素地改变颜色,也许可以帮助我自己放大该区域…… 我主要是被卡住了,因为我不知道,到目前为止,我没有找到显示png的解决方案,该png具有划分每个像素的“网格”。 我的意思是,一种像填字游戏一样的细线可以“突出”每个像素。 请指出我正确的方向! 谢谢!

当你使用object …作为参数时它叫什么?

我在Java中注意到你可以使用一个带对象的函数…作为参数,然后方法将任意数量的对象作为参数并将其视为一个数组。 这个叫什么? 我一直试图搜索它,但它似乎……被搜索引擎忽略了。 我似乎记得在C中的printf做同样的事情。 谢谢。

java.lang.UnsatisfiedLinkError:java.library.path中没有sqljdbc_auth

我创建了一个java应用程序的.jar,当我尝试从cmd运行.jar时,我收到一个错误。 我一直在寻找并找到很多例子,但没有人为我工作。 我将java.library.path设置为目录’sqljdbc_auth.dll’,就像我在这里看到的那样但错误是连续的。 http://sofzh.miximages.com/java/8.png 我用命令运行我的java应用程序:java -Djava.library.path =“my dll path”并给出: PS C:\Users\User> java -Djava.library.path=”C:\Users\User\Desktop\Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc _4.0\ptb\auth\x64″ Error: Could not find or load main class .library.path=C:\Users\User\Desktop\Microsoft JDBC Driver 4.0 for SQL Server \sqljdbc_4.0\ptb\auth\x64 我真的不知道如何解决这个问题。 我一直在寻找很多时间,但没有任何作用。 请有人帮帮我 谢谢 WARNING: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path com.microsoft.sqlserver.jdbc.SQLServerException: This driver […]

JSF 1.2exception处理

我正在申请中处理exception处理。 我使用try catch块来捕获代码中出现的exception,我还可以通过编写监听器并在“faces-config.xml”中注册监听器来处理超时exception。 但是我遇到了在构造函数或错误代码500,400等中捕获意外错误(例如“NullPointerException”)的问题。 我使用了“web.xml”中的标签 java.lang.Exception /sc00/ErrorPage.jsp 我尝试了很多方法来处理exception,任何人都可以帮助我找到解决方案。 我尝试处理这些exception时得到的错误如下。 我使用的是JSF 1.2,服务器是websphere 8 控制台显示以下exception。 com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0014E: Uncaught service() exception root cause Faces Servlet: javax.servlet.ServletException E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: An exception was thrown by one of the service methods of the servlet [/sc00/ErrorPage.jsp] in application [MembershipEligibilityScreensEAR]. Exception created : [java.lang.RuntimeException: FacesContext not found 我的错误页面位于/WebContent/sc00/ErrorPage.jsp中,ErrorPage.jsp没有与之关联的辅助bean。 许多解决方案让我看看Faces Servlet的URL路径,在我的web.xml中,servlet-mapping是如下 […]

如何通过Google电子表格API(gdata)仅从Google电子表格中获取重新计算的单元格

Gdata提供了一种基于时间戳从谷歌电子表格中获取仅更改单元格的方法。 我该如何为Gdata调用创建时间戳? 即“只返回发布时间等于或晚于指定时间戳的条目。” setPublishedMax() https://developers.google.com/gdata/javadoc/com/google/gdata/client/Query#setPublishedMax (com.google.gdata.data.DateTime ) 有没有办法从服务器中提取当前时间? 如果我创建本地时间戳,我该如何同步它,什么时区?