云敛容 2014-08-27 09:13 采纳率: 33.3%
浏览 3761

子窗口调用父窗口的方法或者使用父窗口的成员变量

我们在开发中,常常会遇到在子窗口调用父窗口的方法或者使用父窗口的成员变量的情况。
对于子窗口使用父窗口的变量,我能想到的方法有:
(1)构造函数里面增加参数,构造的时候直接把需要用到的变量传进去;
(2)父窗口提供接口函数,在子窗口调用父窗口的函数,去获取变量值。
这两种那种更好?对于软件工程以及软件设计模式的开闭原则、低耦合高内聚来说,哪种更合理?或者是不是有更好的办法?

然后是子窗口调用父窗口的函数:
(1)构造函数中,直接将父窗口的指针(句柄)传入,需要时,可以通过指针直接调用;
(2)子窗口提供设置回调函数的接口,父窗口提前调用接口设置好回调函数,待需要调用的时候,直接调用这个回调函数;
(3)发送消息,利用消息机制。比如MFC的消息机制,Qt的信号与槽等等。
总感觉消息机制,是最合理的,但是消息机制,比较麻烦,要写的地方比较多,而通过指针调用的方式,更加方便,不过总感觉这种方式不太好,会不会破坏程序的开闭原则、低耦合高内聚等等。我分析不出来,希望有大神,可以指点一二。

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 YoloV5 第三方库的版本对照问题
    • ¥15 请完成下列相关问题!
    • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
    • ¥15 求daily translation(DT)偏差订正方法的代码
    • ¥15 js调用html页面需要隐藏某个按钮
    • ¥15 ads仿真结果在圆图上是怎么读数的
    • ¥20 Cotex M3的调试和程序执行方式是什么样的?
    • ¥20 java项目连接sqlserver时报ssl相关错误
    • ¥15 一道python难题3
    • ¥15 牛顿斯科特系数表表示