一些关于我自己的背景。前AS/400人,最近裁员失业。利用这个机会学习java。我对Java和Netbeans相当陌生。因为我失业了,而且不是在一个有“专家”的组织里,所以我在努力寻找帮助的资源。我在ATLanta,所以我加入了www.ajug.org,希望能与人们建立联系,找到资源。我还申请了一些“奥巴马雄鹿”,以便参加一些课程。在此之前,我希望向你们“好心人”寻求一些帮助!
我已经为一个使用MySQL的SWING应用程序开发了安全结构和动态菜单。我已经开发了许多SWING应用程序,并编译了对应用程序将使用的表执行表维护(Insert/Update/Delete)的类。现在,我开始了解这个应用程序的“本质”。我继续在“相当简单的东西”上跌跌撞撞,我相信“SWING应用程序架构师”或你们中的Netbeans/SWING专家可以很容易地回答这些问题。
关于Netbeans并从SWING类返回一个值。
Netbeans会在我的项目中创建两个或多个.java文件。
示例:桌面应用程序项目包含- DesktopApplicationApp.java和- DesktopApplicationView.java通常情况下,DesktopApplicationApp.java启动()本身,然后在启动()时显示(新DesktopApplicationView(this))。我有几个“查找”表表格,并希望创建单独的类,允许用户通过表a返回一行搜索。(这是OOP,对吧!?)因此,如果我有一个应用程序(DesktopApplicationApp和DesktopApplicationView),并且我想使用另一个类SelectValueApp来搜索数据库并向DesktopApplicationView返回一个键值。
我的“菜单程序”只是执行一个execCMD()来运行我的应用程序中的类。
为了从DesktopApplicationView中“调用”SelectValueApp,我知道我应该使用一个构造函数并创建一个SelectValueApp的实例……但是,我应该使用什么方法从类中“检索密钥”呢?
我能从DesktopApplicationView启动() SelectValueView吗?我读过“使用Swing应用程序框架(JSR296)”,但我仍然不清楚如何做到这一点。我在想,当SelectValueApp完成EXIT()时,它会导致JVM关闭(并杀死DesktopApplicationView)。
我可以在DesktopApplicationView中包含SelectValueView的功能,但是这个程序已经很庞大了!
所以我有一堆问题。1)如何完成此任务?(请)。此外,我参考了这些帖子,它们“非常接近”我需要知道的内容。
questions/1091389/how-to-transfer-objects-from-jframe-to-another-jframe questions/573317/java-swing-close-window-without-exiting-app questions/573378/managing-parent-frame-from-child-frame-on-java-swing
2)是SingleFrameApplication的限制吗?(尝试打开另一个框架以返回值) 3)我必须将所有功能都放在MyApplicationView中吗? 4)或者Netbeans生成的代码只是使这一点变得困难,有一种简单而优雅的方法来实现这一点?
另外,我将创建一个简短的、自包含的、正确的(可编译的)示例(SSCCE)并更新这篇文章
先谢谢你,
当前Java新手/未来Java CSD和Java Heavyweight,
发布于 2009-07-08 18:17:56
我不确定是否有很多项目使用Swing应用程序框架。这是一种不成熟的方式
而且公司已经有了“自己的”框架或解决方案来加速开发或
处理常见的烦恼。
我建议详细查看JSR296文档。
顺便说一句,你不必告诉我们你的全部背景,如果人们有能力/想要的话,他们会帮助你的。
发布于 2009-08-13 08:58:26
Swing应用程序框架已经一去不复返了--据我所知,大多数开发人员已经转移到了JavaFX。
至于你的一般设计问题--有没有理由不同的部分需要是独立的应用程序?我的直觉是,您不需要这样做,因此您不需要套接字侦听器,您只需要回调,以便需要相互通信的类可以以事件驱动的方式进行通信。
发布于 2009-10-31 18:04:00
也许Spring Rich Client是更好的选择?
或者甚至是这个列表中的一个:http://karussell.wordpress.com/2009/10/08/java-application-frameworks-not-only-client-side/
??
https://stackoverflow.com/questions/1099430
复制相似问题