htpmcj 发表于 2022-6-13 19:02:12

有没有判断当前界面库的命令

封装组件时需要根据当前使用的的界面库(MFC还是WTL),从而使用不同的命令,以达到通用的目的,但不知如何判断。

创世魂 发表于 2022-6-13 19:27:52

。。。如果可以的话,吴总何必弄两个库出来。。肯定是不可以的。。组件在设计上稍微有点缺陷。

炫彩界面库 发表于 2022-6-13 19:42:55

用炫彩界面库啊

htpmcj 发表于 2022-6-13 20:51:38

创世魂 发表于 2022-6-13 19:27
。。。如果可以的话,吴总何必弄两个库出来。。肯定是不可以的。。组件在设计上稍微有点缺陷。 ...

已找到方法:
@ #ifdef _MFC_VER
MFC代码...
@ #else
WTL代码...
@ #endif

福寿 发表于 2022-6-14 06:55:09

htpmcj 发表于 2022-6-13 20:51
已找到方法:
@ #ifdef _MFC_VER
MFC代码...


按道理来说应该行不通,首先是不确定两个库是否都可以同时编译进入,如果不行的话,MFC不被加载,所有MFC命令都无法使用,还有就是环境的问题,WTL能运行不代表MFC就可以运行

htpmcj 发表于 2022-6-14 11:30:55

福寿 发表于 2022-6-14 06:55
按道理来说应该行不通,首先是不确定两个库是否都可以同时编译进入,如果不行的话,MFC不被加载,所有MFC ...


我就这样用的

福寿 发表于 2022-6-14 17:32:01

htpmcj 发表于 2022-6-14 11:30
我就这样用的

这个没什么用,如果只是需要窗口句柄就是一句代码而已,取窗口句柄(),编译的时候只会编译编译一个界面库进去,代码都会优化掉了,而且两个库也不可以同时加载,比如没加载MFC界面库,MFC的命令是用不了的

htpmcj 发表于 2022-6-15 00:25:55

本帖最后由 htpmcj 于 2022-6-15 00:34 编辑

福寿 发表于 2022-6-14 17:32
这个没什么用,如果只是需要窗口句柄就是一句代码而已,取窗口句柄(),编译的时候只会编译编译一个界面库 ...
我的要求很低,界面库肯定只能使用一个,写程序时自己是知道用哪个库的。我只是让一些自己封装的命令能适应两个库,避免重复而已!另外,取句柄只是其中一个场景!
页: [1]
查看完整版本: 有没有判断当前界面库的命令