首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

关于dialog有多个属性页的1点想法

2012-11-26 
关于dialog有多个属性页的一点想法近日,做MFC的一些东西,很简单是一个dialog有多个属性页的问题。  一般情

关于dialog有多个属性页的一点想法

近日,做MFC的一些东西,很简单是一个dialog有多个属性页的问题。

  一般情况下,一个dialog如果有多个属性页,只需要将其中的一个设置为Active,其余的待点击这个属性页时会自动激活为Active。

  但是如果此dialog里有多个属性页需要与内存数据做交互,这时就需要将这些属性页设置为活动的。

  不然当与内存的数据做交互时,就会找不到这个属性页,程序就会崩溃。

  所以SetActivePage函数的功能,不止是将此属性页显示出来,更重要的是激活此属性页。


        如下例:


m_PropertySheet.AddPage(&page1);
m_PropertySheet.AddPage(&page2);


m_PropertySheet.SetActivePage( &page1 );
m_PropertySheet.SetActivePage( &page2 );

  如果page1与page2都同时需要自动地与内存有数据交互(不是你点开才进行数据交互的),那么就需要像上面那么做,将page1与page2都SetActivePage。

  

  综上,将属性页设置为active总是对的,如果你不确实这个属性页会不会自动地与内存作数据交换,那么请你在OnInitDialog时,老实地调用SetActivePage。

  注意:把想要默认显示的属性页放在最后面调用SetActivePage哟!

热点排行