Tag: 事件

JFrame上的MouseListener

我想在我的JFrame上收到有关鼠标事件(特别是鼠标输入和退出事件)的通知。 但是当我向它添加一个mouselistener时,我得到的是框架边框上的事件而不是整个框架的内容。 任何想法为什么? 编辑:或者至少你有另一种选择吗? 我想要一个“gloabal”方式来捕获JFrame上的鼠标事件。 也许一个mouselistener不是答案。

Java是否对事件有本机支持,类似于C#?

我对Java听不到的事情感到有点困惑。 但我知道它会做GUI事件。 我错过了什么吗? java有事件处理机制吗? 我知道我可以实现发布者订阅者模式,但我正在寻找Java中的本机支持。 我似乎记得Java 5或6中的Java添加事件,但我不记得我在哪里听到这个,我可能正在弥补它。 基本上我将设备包装在java类中,设备会抛出事件,而我正在寻找最合理的方式来揭示它。 我来自.Net背景,我正在寻找像.Net(C#)中的事件 任何帮助,将不胜感激。

在JScrollPane上设置滚动条

我有一个由HTMLEditorKit支持的JTextPane (包装在JScrollPane )。 JTextPane的内容是简单的HTML,其中一些图像(本地文件)使用img标签嵌入。 问题是当你加载JTextPane ,它需要一瞬间加载,然后它会在页面底部出现滚动条。 如果我做: JTextPane text = new JTextPane(); JScrollPane scroll = new JScrollPane(text); // do some set up… scroll.getVerticalScrollBar().setValue(0); 它会暂时设置滚动条,然后另一个thead(可能是负责加载图像)来并将滚动条敲回底部。 我尝试添加: ((AbstractDocument)text.getDocument()).setAsynchronousLoadPriority(-1); 但这并没有解决它。 有没有办法从text.getDocument()或text中获取一个事件,当窗格完成加载时会通知我,以便我可以设置滚动条呢? 另一种方法是我设置另一个线程等待一秒左右,然后设置滚动条,但这是一个糟糕的黑客。 你的建议?

试图从列表视图中的文本视图中获取值,在android中单击事件

我有一个点击事件连接到我的列表视图,如图所示。 int[] GenusListIDs = { R.id.txt_ID, R.id.txt_Genus, R.id.txt_Count }; SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.genusitem, cursor_genuslist, service.GenusListColumns, GenusListIDs); ListView list_Genus = (ListView)findViewById(R.id.list_Genus); list_Genus.setAdapter(adapter); list_Genus.setOnItemClickListener(new OnItemClickListener(){ @Override public void onItemClick(AdapterView parent, View view, int position, long id) { try { Log.println(1, “ItemClick”, view.toString()); TextView tv = (TextView)view; String genus = (String) tv.getText(); Intent i = new […]

java事件,处理程序和监听器的问题

编辑:在我的意见中,我实际上能够让这个工作和形成一个很好的例子。 接受的答案就是我的例子,如果您需要帮助或有建议,请随时发表评论。 我是java的新手,刚刚介绍过事件,处理程序和监听器。 我在网上找到了3个很好的参考资料,但是,我仍然没有看到我如何实现这个来解决我的问题。 (另外,这是在android上开发的。我怀疑这会改变这个例子,但我想我会告诉你) 我发现有用的网站链接: 快乐的对象 示例仓库 java世界 这是我需要的,使用任意名称和示例,而不是在这里填写我的数百行代码: 这是我的class级及其用途: MainUI – 这将创建UI 连接 – 此类执行与套接字的连接并开始接收数据 DataRobot – 此类对接收的数据执行计算,并决定如何处理它 DataBuilder – 此类从数据机器人收集数据,一旦达到一定数量,它就会将该块发送到远程数据库 DataSender – 此类发送由databuilder发送给它的数据 我用线程来实现这个… =( 我认识的人建议我使用事件。 他给了我一个很好的解释,然而,它是在30分钟内,我没有看到我如何实现它而没有看到一些更好的例子(他也是从C#背景说)。 我想知道是否有人在java中有一些很好的经验可以使用我上面的东西并告诉我我需要做什么。 以下是我计划出的事件: dataReceived – 此事件发生在connect中,此事件在此事件触发时连接接收数据时触发,它将数据发送到数据机器人handler()函数。 dataAnalyzed – 这个事件发生在datarobot中,当datarobot完成处理给它的数据时会触发此事件,当此事件触发时,它会将数据发送到数据库 dataBuilder – 此事件发生在databuilder中,当databuilder收到一定数量并准备发送数据时会触发此事件,当此事件触发时,它会将数据发送到数据库。 我在这里寻找一个例子或至少讨论应该做些什么。 我找到的一个例子是“happyfaceobject”的例子,它非常好。 但是,我仍然无法在我的设计中实现它,因为我对java和事件非常新。 请尽可能帮助我,我们将不胜感激。 这个例子也可以帮助整个社区,因为缺少很棒的java事件示例。 在此先感谢,如果您需要更多信息,请告诉我们。

Angular 2 spring boot服务器端事件

有人可以给我一个春季启动服务器端事件的例子吗? 基本上我需要将服务器端事件推送到浏览器。 我正在使用角度2和弹簧启动后端。 请提供一个示例示例,我无法找到好的示例。 @Controller public class SSEController { private final List emitters = new ArrayList(); @RequestMapping(path = “/stream”, method = RequestMethod.GET) public SseEmitter stream() throws IOException { SseEmitter emitter = new SseEmitter(); emitters.add(emitter); emitter.onCompletion(() -> emitters.remove(emitter)); return emitter; } } 如何从服务器连续推送数据以及如何在Angular 2中订阅此事件? 提前致谢

使用AWTEventListener的全局事件监听器以及如何从中提取MouseEvent

以下问题基于以下信息。 向下滚动以查看实际问题 – 它特指控制台输出。 我已经删除了所有内容,并提供了一个简单的程序来重现以下输出: import java.awt.AWTEvent; import java.awt.Toolkit; import java.awt.event.AWTEventListener; import javax.swing.JFrame; public class Main { static Toolkit tk = Toolkit.getDefaultToolkit(); static long eventMask = AWTEvent.MOUSE_MOTION_EVENT_MASK + AWTEvent.MOUSE_EVENT_MASK + AWTEvent.KEY_EVENT_MASK; public static void main(String[] args) { tk.addAWTEventListener(new AWTEventListener() { @Override public void eventDispatched(AWTEvent e) { System.out.println(e.getID() + “, ” + e); } }, eventMask); […]

JTable:检测单元数据的变化

在Netbeans中,我使用GUI Builder将JTable插入到我的应用程序中。 到目前为止,我只有一个类(CustomerDB): package CustomerDB; import […]; public class CustomerDB extends javax.swing.JFrame { CellEditorListener ChangeNotification = new CellEditorListener() { public void editingCanceled(ChangeEvent e) { System.out.println(“The user canceled editing.”); } public void editingStopped(ChangeEvent e) { System.out.println(“The user stopped editing successfully.”); } }; public CustomerDB() { customerTable = new javax.swing.JTable(); customerTable.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, […]

为什么我的代码“Bouncing ball”不起作用?

我正在尝试编写一个关于弹跳球的代码,但我仍然坚持如何让球反弹。 代码似乎是正确的,没有来自eclipse的错误消息,但球不动。 任何帮助/提示都很感激。 这是我的代码: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class BouncingBallTest extends JFrame { private JButton jbtStart = new JButton(“Start”); private JButton jbtStop = new JButton(“Stop”); private Ball canvas = new Ball(); public BouncingBallTest() { JPanel panel = new JPanel(); // Use the panel to group buttons panel.add(jbtStart); panel.add(jbtStop); add(canvas, BorderLayout.CENTER); // Add […]

单击绘制的对象

我有一个名为Shape的类,它inheritance自JPanel。 许多子类反过来扩展Shape类,每种类型的形状一个。 每个形状都有自己的overriden paint()方法,它绘制相应的形状。 我希望能够点击任何形状,我现在正试图实现这个逻辑。 请注意,每个形状都已添加到arrayList中。 但是,即使我在形状内部明确单击,contains语句也始终返回false。 有任何想法吗?