【问题标题】:Windows forms - circular dependency?Windows 窗体 - 循环依赖?
【发布时间】:2012-08-13 22:26:23
【问题描述】:

我正在将我的 C# windows 窗体应用程序转换为 C++\CLI windows 窗体应用程序。

我的 C# 版本在表单之间存在循环依赖关系。例如,“主”窗体创建“Form2”并显示它,当 Form2 关闭时,它通过 Main.activeWindow 访问静态主窗体实例重新显示隐藏的“主”窗体(在 C++ 中,这需要循环头文件和类之间的依赖关系)。两种形式之间也有更多的交流 - 即。 'Form2' 更改表单'Main' 中的按钮颜色,或更新属性。

我怎样才能打破这种依赖关系(我只是不想弄乱前向声明等),但仍然具有相同的功能?

感谢您的帮助, 亚历克斯

【问题讨论】:

    标签: visual-studio-2010 c++-cli


    【解决方案1】:

    唯一的方法是将类定义拆分为普通的 .h/.cpp 文件。包括 .h 中的声明和 .cpp 中的主体,它们可以在其中看到两个类定义。

    【讨论】:

    • 我试过了,但是表单设计器崩溃了,因为我将 InitializeComponent() 函数移到了 .cpp 文件中...
    猜你喜欢
    • 2021-04-23
    • 2023-03-15
    • 2010-09-12
    • 2021-10-02
    • 1970-01-01
    相关资源
    最近更新 更多