2012-03-16 32 views
0

我有一个基于MFC的桌面应用程序。应用程序是全部用MFC编写的,因此它不是跨平台兼容的,因此我需要使它交叉兼容。我认为将GUI部分转换为java(swing)以实现交叉兼容性,并通过分离和包装纯cpp逻辑并通过JNI/JNA访问它来制作dll或.so文件,这样任何人都可以帮助我如何在MFC中分离gui部分和逻辑基于应用程序,以便我可以在Java中的GUI?我对MFC没有更深入的了解。在Java中转换MFC桌面应用程序GUI

回答

3

基于MFC的应用程序不一定在GUI和程序逻辑之间有一个干净的分离。 MFC将调用安排到C++类的函数中,这些类不仅可以包含GUI处理,还可以包含所有应用程序逻辑。人们并不总是用水晶球编写MFC应用程序,告诉他们有人会需要Java中的GUI部件,同时保留其余部分。

对不起,你的问题并不是真的那种你可以在这种类型的论坛中具体解决你面临的挑战。你必须从内到外学习MFC应用程序,把它分开,尽可能做到最好。这可能需要相当多的努力,最终可能会被重写(逻辑结束于Java)。

堆栈溢出效果最好时,你有什么具体的,像一段示例中的哪一个出现故障或需要被转化为做别的事情的代码,等您的回复

+0

谢谢,我知道这可能需要相当多的我已经发布了这个问题,只是想知道如果任何mfc程序员可以给启动一些想法(第一步)转换 – 2012-03-16 07:34:40

+0

第一步:非常熟悉MFC应用程序。以用户身份探索每个功能;阅读每个可用文档的碎片,研究源代码。在Visual Studio中构建它,单步进入函数等。如果应用程序日志不与GUI分离,那么首先将它实际应用到MFC版本可能不是一个好主意。即将MFC程序转换成仍然有效的程序(只要执行其任何测试用例),但具有更好的分离效果。然后程序可以更轻松地“旋转”应用程序逻辑。 – Kaz 2012-03-16 19:45:44

+0

s/log不是/逻辑不是/ – Kaz 2012-03-19 05:52:33

相关问题