我正在做一个小项目,它会计算来自.txt文件或网页的单词。 在做的时候,我遇到了一个问题。
有GUI窗口A,B
A在本地或网页中执行定位.txt文件。 B从目标执行打印文本,并提供用户是否开始计算文本中的单词的选项
因此,当用户点击B中的“字数”按钮时,用户可以看到A中每个单词的单词列表和单词计数。我希望用户尽快从B中获取Map<String word, Integer frequency>
点击“字数统计”按钮,在A中的JList
显示单词和频率。
问题是我无法想出如何处理A中B的事件。 我考虑的方法之一是创建一个A,B作为成员的类...但我无法继续......
P.S。我是韩国新手程序员。所以,请理解我糟糕的英语技能..
答案 0 :(得分:0)
如果A和B是两个独立的GUI应用程序,则意味着您有两个独立的进程在运行。你需要的是“进程间”沟通。
从应用程序A,您继续在文件系统上写入数据。 从应用程序B,您只需从文件系统中读取数据并按照您的意愿使用。
编辑 -
查看评论,我可以建议您需要在多个线程中共享模型对象。
class ModelObject{
//This should hold your data in final fields. Make it immutable.
}
// You can make it singleton.
Class SharedService{
Private volatile ModelObject model ;
Public void write(ModelObject model);
Public ModelObject read();
}
应用程序A使用SharedService写入数据,将数据封装到类ModelObject中。 应用程序B使用SharedService.get接口读取数据。